Open VPN – это один из протоколов технологии Виртуальных частных сетей или Virtual Private Network (VPN), предназначенный для создания зашифрованных каналов связи между компьютерами или сервером и клиентами. Преимущество, Open VPN давно известен многим системным администраторам и, не удивительно, что данный протокол имеет высокую популярность, позволяя устанавливать соединения между двумя и более компьютерами, находящимися за NAT (Firewall), без необходимости изменения основных настроек.

В этой статье, мы рассмотрим вариант поднятия Open VPN сервера на маршрутизаторе Mikrotik. К сожалению, сразу хочу оговориться, что в отличие от Linux серверов, Open VPN на Mikrotik, не поддерживает UDP транспорт и компрессию lzo. Но, тем не менее, все остальные функции, включая TCP транспорт, L2/L3 туннели и т.д., полностью работают.

Начнем мы с того, что для работы любого Open VPN сервера, нужен защищенный сертификат. Но это может быть как SSL сертификат, выданный авторизованным центом сертификации, так и самостоятельно созданный и подписанный сертификат. Как получить данный сертификат, смотрите в наших статьях, по ссылкам здесь и здесь.

Итак, у нас уже есть сертификат (в нашем случае, это будет самостоятельно подписанный сертификат), и, первым делом, мы должны его импортировать в систему. Делается это следующим образом: копируем файлы сертификатов и ключей в окно меню Files утилиты Winbox. Сделать это можно простым перетаскиванием (Drug&Drop).

Должно быть три файла:

  1. ca.crt – сертификат центра сертификации (Certification Authority или CA).
  2. server.crt – сертификат вашего OpenVPN сервера.
  3. server.pem – ключ вашего OpenVPN сервера.
Рис.1. Копируем файлы сертификатов и ключей в окно меню

Рис.1. Копируем файлы сертификатов и ключей в окно меню

 

После чего, открываем меню System Certificates и при помощи кнопки Import, импортируем все три файла, начиная с ca.crt.

Рис.2. Открываем меню System Certificates, и импортируем все три файла

Рис.2. Открываем меню System Certificates, и импортируем все три файла

 

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

Рис.3. Импортируем сертификат сервера и ключ

Рис.3. Импортируем сертификат сервера и ключ

 

Затем, в меню IP Pool зададим диапазон IP-адресов, которые будут выдаваться подключенным клиентам. В зависимости от числа предполагаемых клиентов, это можно сделать в виде целой подсети, типа 192.168.10.0/24 или же диапазоном адресов 192.168.10.100-192.168.10.150. При этом, необходимо указать уникальное имя для данного пула. Например, VPN-Pool.

Рис.4. Меню IP Pool, задаём диапазон IP адресов

Рис.4. В меню IP Pool, зададим диапазон IP-адресов

 

Теперь в меню PPP раздела Profiles создадим новый профиль, которому дадим уникальное имя Name, укажем Local Address. В качестве Remote Address выберем наш Pool.

Рис.5. Создаём новый профиль

Рис.5. Создаём новый профиль

 

Далее, в разделе Interfaces меню PPP, мы должны настроить Open VPN сервер, нажав на кнопку OVPN Server.

Включаем его, поставив галочку возле Enabled, в Default Profile выбираем наш профиль, а в Certificate – наш сертификат. И, на всякий случай, ставим все галочки в шифровании Cipher.

Рис.6. Ставим везде галочки в шифровании

Рис.6. Ставим везде галочки в шифровании

 

Теперь, добавим пользователя в разделе Secrets.

Зададим ему Name (Имя пользователя) и Password, а в Profile выберем профиль Open VPN, созданный ранее.

Учтите, что для каждого отдельного пользователя, должна быть создана своя запись с уникальной парой login/password.

Рис.7. Создаём запись с уникальной парой login/password

Рис.7. Создаём свою запись с уникальной парой login/password

 

И ещё одна немаловажная деталь -  настройка Firewall. В меню IP Firewall раздела Filter Rules, нужно добавить разрешающее правило. Где выбрать цепочку Chain – input, протокол Protocol – tcp, Dst. Port  – 1194 (если вы не меняли порт в настройках Open VPN сервера).

Рис.8. IP Firewall, в разделе Filter Rules, добавляем разрешающее правило

Рис.8. IP Firewall, в разделе Filter Rules, добавляем разрешающее правило

 

И выбрать Action – accept.

Рис.9. Выбираем Action - accept

Рис.9. Выбираем Action – accept

 

При этом нужно не забывать о том, что все разрешающие правила, должны быть в списке выше запрещающих.

После успешного подключения клиента(ов) в меню PPP в разделе Interfaces будут появляться динамические записи (D), как показано ниже.

Рис.10. Подключение клиента(ов) прошло успешного

Рис.10. Подключение клиента(ов) прошло успешного

Оригинал статьи