Keenetic настроить openvpn server

ZyXEL Keenetic OpenVPN: полное руководство по созданию и подключению

Всех приветствую на нашем ламповом портале 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 адрес роутера на доменное имя.

  1. Перейдите в раздел «Доменное имя».
  2. На первой вкладке введите любое наименование латинскими буквами.

  1. Система автоматом подберет вам поддомен, выберите любой.

  1. Помните, я говорил про два режима работы? В общем, если у вас белый IP, то выбираем «Прямой доступ». Режим «Через облако» работать с VPN не будет.

  1. Чтобы проверить, что служба работает – запустите браузер и в адресной строке введите DDNS, который вы придумали.

ШАГ 2: Настройка сервера

Прежде чем мы начнем, давайте я покажу пример, на основе которого мы будем работать. В общем ничего сложного, у нас есть два роутера Keenetic, которые мы хотим подключить друг к другу по VPN тоннелю. Задача в том, чтобы устройства этих сетей видели друг друга и были в одной (виртуальной) локальной сети. Туннель у нас будет иметь два конца: 10.1.0.1 и 10.1.0.2 (это не внешние IP адрес, а именно адреса туннеля).

Читайте также:  Телевизор супра пульт ростелеком как настроить

  1. В первую очередь нужно установить нужный нам компонент. Идем в «Общие настройки» – «Обновления и компоненты» кликаем по кнопке «Изменить набор компонентов» и в списке находим «Клиент OpenVPN». Пусть вас не вводит в заблуждение название, этот компонент работает как сервер и как клиент.

  1. Нам нужно скачать программу OpenVPN с официального сайта .

  1. Инсталлируем программу к себе на комп.

  1. Запускаем командную строку с правами админа.

cd C:\Program Files\OpenVPN\bin (команда перехода в папку, с установленной программой)
openvpn.exe –genkey –secret static.key (команда генерирует секретный ключ)

ПРИМЕЧАНИЕ! Если у вас 64-битная система, и вы скачали OpenVPN для 32-х битной ОС, то программа будет лежать по пути: C:\Program Files (x86)\OpenVPN\bin

  1. Теперь смотрите, идем в папку «bin» в установочной папке. Ищем там файлик «static.key» и открываем его через блокнот. Копируйте все содержимое – это и есть ключ.

  1. Скачайте файл static-server , откройте его блокнотом. И между тэгами «secret» содержимое замените на свой ключ. Сохраните файл.

  1. Теперь идем обратно в настройки роутера. Идем по пути «Другие подключения» – «VPN-подключения». Кликаем по кнопке добавления. В первую очередь вводим имя – можно указать любое. Далее указываем «Тип (протокол)» – «OpenVPN». Теперь копируем содержимое файлика «static-server» в поле «Конфигурация OpenVPN». Обязательно проверьте, чтобы в поле «Подключаться через» стоял параметр «Любое интернет-подключение» – иначе подключение может не произойти. Сохраняем параметр.

ШАГ 3: Настройка клиента

  1. Опять же нам нужно установить компонент «Клиент OpenVPN» – повторяем 1 шаг из прошлого шага.
  2. Скачиваем другой файлик static-client и открываем его в блокноте, вставляем ключ.

  1. Находим строку, которая начинается со слова «remote», и после нее заменяем значение на свой DDNS или IP.

  1. Добавляем OpenVPN подключение уже на клиенте. Все делается аналогично. Настройки файлика вставляем в «Конфигурацию OpenVPN».

  1. А теперь нам нужно установить Telnet к себе в систему. Если у вас Windows Vista, 7, 8 или 10, то делаем следующие шаги. Я предупреждал, что настройка тут геморная.
  2. Открываем «Панель управления».

  1. Кликаем по разделу «Программы и компоненты».

  1. Слева выбираем ссылку «Включение или отключение компонентов Windows».

  1. Устанавливаем галочки напротив клиентов Telnet и TFTP.

  1. Открываем консоль со стороны нашего роутера-сервера и прописываем команду, чтобы через телнет попасть внутрь настроек.

  1. Далее вводим сначала логин (admin), а потом пароль от конфигуратора.

  1. Прописываем поочередно команды:

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

  1. Также нужно открыть UDP порт под номером 1194 (на серверном роутере). Переходим в «Межсетевой экран» и создаем правило, при создании вам нужно выбрать выше в строке «Интерфейс» подключение, которое вы используете для интернета (смотрите по названию).

  1. Установите настройки как на картинке ниже.

Хочу подключиться к OpenVPN сети

  1. «Общие настройки» – «Обновления и компоненты» – «Изменить набор компонентов» – добавляем компонент, указанный на картинке ниже.

  1. Нам нужен OpenVPN файл, который нужен для подключения к VPN-сети. Если он уже у вас есть, или вам его выдал провайдер или системный администратор – хорошо. Вы также можете попробовать бесплатные сервера от проекта «VPNGate». Я буду показывать на их примере. Переходим на сайт . Пролистываем вниз до таблицы и оставляем галочку только с параметром «OpenVPN», далее нажимаем по кнопке «Refresh Servers List». Останутся сервера, которые используют эти подключения. Далее из нужного нам столбца скачиваем конфиг-файл.
Читайте также:  Не работают фары стоп сигнала ваз

  1. Ниже вы увидите два файла, в скобках указан протокол и порт, через который мы будем подключаться.

  1. Скачайте файлик, откройте его в блокноте, выделите все и скопируйте в буфер с помощью клавиш ( Ctrl + C ).

  1. В Web-интерфейсе роутера идем в «Другие подключения» – «VPN-подключения» добавляем новый коннект.
  2. Указываем любое имя подключения и ниже указываем тип. В конфигурацию нужно будет скопировать содержимое файла.

  1. Если помимо файла также выдается логин и пароль, то его нужно будет добавить в файл. Для этого находим строку «auth-user-pass».


login
password

  1. Между тегами вставляем сначала логин, а потом пароль.
  2. Если же вам дали сертификаты, который обычно идет в отдельных файликах, то нужно найти строки:

ca ca.crt
cert
xxxxxxxxxx.crt
key xxxxxxxxxx.crt

  1. И закомментировать, для этого в начале ставим значок решетки (#), так чтобы получилось:

#ca ca.crt
#cert
xxxxxxxxxx.crt
#key xxxxxxxxxx.crt

  1. Далее в самом конце файлика вставляем строки с сертификатами. В нужных полях вставляем содержимые файла.


—–BEGIN CERTIFICATE—–
Копируем содержимое из ca.crt
—–END CERTIFICATE—–

—–BEGIN CERTIFICATE—–
Копируем содержимое из xxxx.crt
—–END CERTIFICATE—–

—–BEGIN RSA PRIVATE KEY—–
Копируем содержимое из xxxx.key
—–END RSA PRIVATE KEY—–

На этом все, дорогие друзья. Обращаю ваше внимание, что вы всегда можете обратиться ко мне, или кому-то из нашей команды в комментариях. Всем добра!

Источник

Keenetic настроить openvpn server

Первый этап настройки OpenVPN — генерация ключей для серверной и клиентской частей OpenVPN, необходимых для безопасного подключения. Мы рассмотрим самый распространенный вариант работы — один ключ сервера и неограниченное количество ключей клиентов. Для их создания понадобится установочный файл OpenVPN для систем Windows, который можно взять по ссылке: Windows Installer (32-bit или 64-bit). После его установки необходимо перейти в папку с установленным OpenVPN (по умолчанию: «C:\Program Files\OpenVPN»), открыть папку «easy-rsa», скопировать файл «vars.bat» (или если его нет, то файл «vars.bat.sample») и переименовать в «vars-server.bat», открыть его в любом блокноте для редактирования и заменить строки как в примере (или просто нажать на имя файла в примере для того, чтобы скачать его себе на компьютер):

Далее необходимо еще раз скопировать файл «vars.bat», но в этот раз дать ему имя «vars-client.bat», открыть его и заменить строки (будьте внимательны — несколько строк отличаются от предыдущего блока кода):

Далее нужно запустить Командную строку Windows (можно сделать с помощью сочетания клавиш Win+R, или выбрать в меню Пуск > Все программы > Стандартные) ввести в нее последовательно:

Далее после ввода команды, через пробел, необходимо ввести Имя_сервера, которое мы вводили в коде файла «vars-server», после чего в консоли могут возникать вопросы на которые нужно отвечать «yes» (если предоставляется выбор «y/n» или просто жать «Enter» когда запрашиваются данные (мы их уже указали в файле «vars-server»).

Следующие действия очень похожи на предыдущие — после ввода команды, через пробел, необходимо ввести Имя_клиента, которое мы вводили в коде файла «vars-client», после чего в консоли могут возникать вопросы на которые нужно отвечать «yes» (если предоставляется выбор «y/n» или просто жать «Enter» когда запрашиваются данные (мы их уже указали в файле «vars-client»).

После чего для проверки создания ключей зайдите в папку C:\Program Files\OpenVPN\easy-rsa\keys, там должны быть следующие файлы:

Если все они там присутствуют, то можно смело приступать к следующему этапу.

Установка пакетов необходимых для работы OpenVPN

Для установки пакетов OpenVPN необходимо подключившись по SSH к консоли ввести следующую команду:

Подготовка OpenVPN

Если планируется постоянное использование OpenVPN, то удобнее всего будет настроить его автозапуск, для чего нужно ввести следующую команду в консоли:

Первое что необходимо сделать — это скопировать файлы сгенерированных ключей в папку /media/DISK_A1/system/etc/openvpn/keys.

Настройка сервера OpenVPN

Необходимо отредактировать основной файл настроек OpenVPN, находящийся по адресу »/media/DISK_A1/system/etc/openvpn/openvpn.conf». Рассмотрим некоторые возможные настройки: Порт на который будут поступать соединения.

Протокол, по которому будет идти соединение.

Тип интерфейса и режим работы: tun = L3-туннель, tap = L2-туннель.

Файл, содержащий параметры Diffie Hellman.

Опция ca определяет корневой (root) сертификат, которым подписаны клиентские пары сертификат/ключ. Значение этой опции keys/ca.crt указывает месторасположение этого сертификата относительно каталога openvpn. (Или, иными словами, это открытый ключ сервера).

Каждый участник OpenVPN соединения в TLS режиме должен иметь собственный сертификат и файл с закрытым ключом. Каждый сертификат должен быть подписан закрытым ключом центра сертификатов, чей открытый ключ указывается в опции ca.

Закрытый ключ, который генерируется вместе с сертификатом, указанным в опции cert.

Использование режима TLS:

Режим работы сервера. По умолчанию OpenVPN работает в p2p-режиме (point-to-point или один-к-одному), при указании mode server он работает в режиме сервера со многими клиентами.

Конфигурация интерфейса. При помощи параметра ifconfig определяем IP адрес сервера и маску подсети.

Выделение пула IP адресов, которые будут выдаваться клиентам.

Если вы хотите, чтобы клиенты могли видеть друг друга, то необходимо добавить следующее:

Если вы хотите, что бы за клиентами закреплялись постоянные адреса, добавьте следующий параметр:

Он определяет файл, в котором будет сохраняться информация о машине и ее IP. Файл содержит строки: Имя машины,IP адрес. Во время работы, сервер с периодичностью в 600 секунд обновляет содержимое этого файла. При включении, сервер читает содержимое файла. Использование шифрования для повышения уровня безопасности соединения.

Макрокоманда «пинговать» противоположную сторону туннеля с указанным периодом 10 сек, при отсутствии встречных пингов в течение 120 сек, считать туннель упавшим и запускать пересоединение.

Не перечитывать заново файлы ключей при получении сигнала SIGUSR1 (переустановка соединения) или через интервал, указанный в опции «keepalive m n» (переустановить соединение через n секунд после отправки последнего icmp пакета клиенту, который остался без ответа).

Не закрывать или переоткрывать устройства TUN/TAP при получении сигнала SIGUSR1 или по прошествию интервала n опции «keepalive m n».

Использование компрессии для уменьшения объема передаваемого траффика.

Сохранение информации о текущих соединениях сервера:

Cохранять или добавлять лог в указанный файл:

Установка уровня детализации событий для логов.

Установка ограничения на повторяющиеся события в логах.

В итоге должно получиться что-то вроде следующего файла:

Настройка клиента OpenVPN

Настройка аналогична настройке сервера за исключением нескольких параметров, которые мы сейчас рассмотрим: Задание доменного имени хоста или IP адреса для соединения с сервером OpenVPN:

Включение постоянного обновления адреса сервера, если указано доменное имя хоста.

Эта команда заставляет клиента проверить сертификат, предъявленный сервером. Проверяется то, что сертификат именно серверный.

В итоге должно получиться что-то вроде следующего файла:

Задание правил IPTABLES

Для успешного функционирования OpenVPN нам понадобится добавить правила в IPTABLES. Проще всего это будет сделать создав (изменив) файл /media/DISK_A1/system/etc/firewall.d/fw.sh, в который внести необходимые строки. Обязательна только первая строка,а далее в зависимости от настроек:
Если наш OpenVPN настроен на порт 1194 и использует для соединения tcp:

Если наш OpenVPN настроен на порт 1194 и использует для соединения udp:

Источник

Оцените статью