Всех приветствую на нашем ламповом портале WiFiGid. Сегодня я расскажу вам, как настроить OpenVPN на роутерах Keenetic. Я рассмотрю два варианта. Первый – когда вы хотите организовать свою собственную сеть VPN между двумя Keenetic. Второй – когда вы хотите подключиться к выделенной VPN.
Сразу предупрежу, что делается все очень неудобно. Вся претензия к разработчикам ОС Keenetic. На том же самом ASUS все делается куда проще, но тут все не так. Также напомню, что у Keenetic есть и другие способы использования VPN: PPTP, L2TP и WireGuard. Последняя штука была добавлена в новой версии прошивки (3.3). О настройках этих вариантов можно почитать тут.
Они конфигурируются куда проще чем OpenVPN. В общем я вас предупредил. Я постарался описать все максимально подробно, но если что-то пойдет не так или возникнут вопросы – пишите в комментариях.
Хочу организовать сеть OpenVPN между двумя Keenetic
ШАГ 1: Запуск DDNS и проверка внешнего IP адреса
ПРИМЕЧАНИЕ! Если у вас белый и статический IP адрес, то пропустите эту главу.
Все службы, которые работают с интернетом, и внешний IP могут работать, только если у пользователя белый IP адрес. Поэтому в первую очередь вам нужно проверить, какой именно IP у вас – белый или серый. О том, что же такое белый и серый IP, а также как это проверить читаем тут.
Кто-то сейчас может возразить – ведь мы будем использовать KeenDNS, который может связываться с роутером по облаку в обход серого IP. Да это так, но на официальном сайте сказано, что OpenVPN может работать с KeenDNS только в режиме «Прямого доступа» (когда IP белый), а не через «Облако» (когда IP серый). Дело в том, что с KeenDNS к роутеру можно иметь доступ только через HTTP и HTTPS. Даже TELNET не работает по KeenDNS, не говоря уже о VPN.
В общем вы проверили и узнали, что ваш IP белый. Если он серый, то просто ищем другого провайдера. Если он у вас динамический, то вам нужно также подключить DDNS. Мы будем использовать встроенный сервис KeenDNS, который заменяет IP адрес роутера на доменное имя.
- Перейдите в раздел «Доменное имя».
- На первой вкладке введите любое наименование латинскими буквами.
- Система автоматом подберет вам поддомен, выберите любой.
- Помните, я говорил про два режима работы? В общем, если у вас белый IP, то выбираем «Прямой доступ». Режим «Через облако» работать с VPN не будет.
- Чтобы проверить, что служба работает – запустите браузер и в адресной строке введите DDNS, который вы придумали.
ШАГ 2: Настройка сервера
Прежде чем мы начнем, давайте я покажу пример, на основе которого мы будем работать. В общем ничего сложного, у нас есть два роутера Keenetic, которые мы хотим подключить друг к другу по VPN тоннелю. Задача в том, чтобы устройства этих сетей видели друг друга и были в одной (виртуальной) локальной сети. Туннель у нас будет иметь два конца: 10.1.0.1 и 10.1.0.2 (это не внешние IP адрес, а именно адреса туннеля).
- В первую очередь нужно установить нужный нам компонент. Идем в «Общие настройки» – «Обновления и компоненты» кликаем по кнопке «Изменить набор компонентов» и в списке находим «Клиент OpenVPN». Пусть вас не вводит в заблуждение название, этот компонент работает как сервер и как клиент.
- Нам нужно скачать программу OpenVPN с официального сайта.
- Инсталлируем программу к себе на комп.
- Перезагружаем компьютер.
- Запускаем командную строку с правами админа.
- Прописываем две команды:
cd C:Program FilesOpenVPNbin (команда перехода в папку, с установленной программой)
openvpn.exe –genkey –secret static.key (команда генерирует секретный ключ)
ПРИМЕЧАНИЕ! Если у вас 64-битная система, и вы скачали OpenVPN для 32-х битной ОС, то программа будет лежать по пути: C:Program Files (x86)OpenVPNbin
- Теперь смотрите, идем в папку «bin» в установочной папке. Ищем там файлик «static.key» и открываем его через блокнот. Копируйте все содержимое – это и есть ключ.
- Скачайте файл static-server, откройте его блокнотом. И между тэгами «secret» содержимое замените на свой ключ. Сохраните файл.
- Теперь идем обратно в настройки роутера. Идем по пути «Другие подключения» – «VPN-подключения». Кликаем по кнопке добавления. В первую очередь вводим имя – можно указать любое. Далее указываем «Тип (протокол)» – «OpenVPN». Теперь копируем содержимое файлика «static-server» в поле «Конфигурация OpenVPN». Обязательно проверьте, чтобы в поле «Подключаться через» стоял параметр «Любое интернет-подключение» – иначе подключение может не произойти. Сохраняем параметр.
ШАГ 3: Настройка клиента
- Опять же нам нужно установить компонент «Клиент OpenVPN» – повторяем 1 шаг из прошлого шага.
- Скачиваем другой файлик static-client и открываем его в блокноте, вставляем ключ.
- Находим строку, которая начинается со слова «remote», и после нее заменяем значение на свой DDNS или IP.
- Добавляем OpenVPN подключение уже на клиенте. Все делается аналогично. Настройки файлика вставляем в «Конфигурацию OpenVPN».
- А теперь нам нужно установить Telnet к себе в систему. Если у вас Windows Vista, 7, 8 или 10, то делаем следующие шаги. Я предупреждал, что настройка тут геморная.
- Открываем «Панель управления».
- Кликаем по разделу «Программы и компоненты».
- Слева выбираем ссылку «Включение или отключение компонентов Windows».
- Устанавливаем галочки напротив клиентов Telnet и TFTP.
- Открываем консоль со стороны нашего роутера-сервера и прописываем команду, чтобы через телнет попасть внутрь настроек.
telnet 192.168.1.1
- Далее вводим сначала логин (admin), а потом пароль от конфигуратора.
- Прописываем поочередно команды:
interface OpenVPN0 no ip global
interface OpenVPN0 security-level private
no isolate-private
ip nat 10.1.0.2 255.255.255.255 (Для того, чтобы устройства этой сети имели доступ к интернету)
system configuration save
- Также нужно открыть UDP порт под номером 1194 (на серверном роутере). Переходим в «Межсетевой экран» и создаем правило, при создании вам нужно выбрать выше в строке «Интерфейс» подключение, которое вы используете для интернета (смотрите по названию).
- Установите настройки как на картинке ниже.
Хочу подключиться к OpenVPN сети
- «Общие настройки» – «Обновления и компоненты» – «Изменить набор компонентов» – добавляем компонент, указанный на картинке ниже.
- Нам нужен OpenVPN файл, который нужен для подключения к VPN-сети. Если он уже у вас есть, или вам его выдал провайдер или системный администратор – хорошо. Вы также можете попробовать бесплатные сервера от проекта «VPNGate». Я буду показывать на их примере. Переходим на сайт. Пролистываем вниз до таблицы и оставляем галочку только с параметром «OpenVPN», далее нажимаем по кнопке «Refresh Servers List». Останутся сервера, которые используют эти подключения. Далее из нужного нам столбца скачиваем конфиг-файл.
- Ниже вы увидите два файла, в скобках указан протокол и порт, через который мы будем подключаться.
- Скачайте файлик, откройте его в блокноте, выделите все и скопируйте в буфер с помощью клавиш (Ctrl + C).
- В Web-интерфейсе роутера идем в «Другие подключения» – «VPN-подключения» добавляем новый коннект.
- Указываем любое имя подключения и ниже указываем тип. В конфигурацию нужно будет скопировать содержимое файла.
- Если помимо файла также выдается логин и пароль, то его нужно будет добавить в файл. Для этого находим строку «auth-user-pass».
- И заменяем её на:
<auth-user-pass>
login
password
</auth-user-pass>
- Между тегами вставляем сначала логин, а потом пароль.
- Если же вам дали сертификаты, который обычно идет в отдельных файликах, то нужно найти строки:
ca ca.crt
cert xxxxxxxxxx.crt
key xxxxxxxxxx.crt
- И закомментировать, для этого в начале ставим значок решетки (#), так чтобы получилось:
#ca ca.crt
#cert xxxxxxxxxx.crt
#key xxxxxxxxxx.crt
- Далее в самом конце файлика вставляем строки с сертификатами. В нужных полях вставляем содержимые файла.
<ca>
—–BEGIN CERTIFICATE—–
Копируем содержимое из ca.crt
—–END CERTIFICATE—–
</ca>
<cert>
—–BEGIN CERTIFICATE—–
Копируем содержимое из xxxx.crt
—–END CERTIFICATE—–
</cert>
<key>
—–BEGIN RSA PRIVATE KEY—–
Копируем содержимое из xxxx.key
—–END RSA PRIVATE KEY—–
</key>
- Включаем бегунок.
- Сохраняем настройки.
На этом все, дорогие друзья. Обращаю ваше внимание, что вы всегда можете обратиться ко мне, или кому-то из нашей команды в комментариях. Всем добра!