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

Бывают случаи, когда необходимо настроить удалённый доступ на mikrotik, или даже на несколько.
Особенно это актуально, если вы обслуживаете несколько объектов и нет возможности физически постоянно присутствовать возле оборудования.
В этом статье мы разберём, как настроить OpenVPN сервер на mikrotik, а также клиенты на mikrotik и компьютере под управлением Windows.

Для работы нам понадобиться Белый IP адрес (он и будет адресом сервера в наших настройках), для доступа к серверу из интернета и сертификаты безопасности.

Краткий план данной статьи:

Создание сертификатов и ключей OpenVPN

1) Скачаем программу OpenVPN с официального сайта

Скачаем программу OpenVPN с официального сайта

2) Устанавливаем программу, выбрав все галочки.

EasyRSA Certificate Management Scripts (специально созданная программа по созданию ключей и сертификатов,которая использует openssl для выполнения действий с ключами и сертификатами) нам обязательно понадобится для генерации ключей и сертификатов.

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

3) Указываем путь. В дальнейшем он нам понадобиться. В нашем случае используем стандартный C:\Program Files\OpenVPN

4) После установки заходим в C:\Program files\OpenVPN\easy-rsa

Открываем vars.bat (если его нет, то vars.bat.sample) блокнотом или NotePad++ и редактируем его.

set KEY_COUNTRY=RU
set KEY_PROVINCE=MoscowRegion
set KEY_CITY=MOSCOW
set KEY_ORG=OpenVPN
set KEY_EMAIL=mail@mail.com
set KEY_CN=server
set KEY_NAME=server
set KEY_OU=OU
set PKCS11_MODULE_PATH=changeme
set PKCS11_PIN=1234

В строках  set KEY_CN и set KEY_NAME указываем server
Последние 2 строки — параметры по умолчанию. Остальное можете редактировать под себя.

Сохраняем файл как vars.bat на рабочий стол, а затем копируем в папку C:\Program files\OpenVPN\easy-rsa
Чаще всего сохранить напрямую в исходную папку не получится — не хватает прав.

5) Отредактируем файл openssl-1.0.0.cnf
Так же открываем с помощью блокнота или notepad++

Нас интересует строка
default_days = 3650 # how long to certify for
Она отвечает за время жизни сертификата. Если значение отличается — то указываем 3650 (10 лет).
Сохраняем.

6) Запускаем командную строку от имени администратора:
Пуск — Все программы — Стандартные 
Правой кнопкой мыши на «Командная строка» и в меню — Запустить от имени администратора
Командную строку не закрываем до конца процесса генерации сертификатов.

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

7) По очерёдно выполняем следующие три команды
cd: C:\Program files\OpenVPN\easy-rsa 
vars
clean-all

В итоге мы должны увидеть сообщение «Скопировано файлов: 1» дважды.

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

В папке C:\Program files\OpenVPN\easy-rsa появится папка keys с двумя файлами index.txt и serial

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

8) Генерируем ключ Диффи Хельмана — команда build-dh
Генерация займёт некоторое время. Дождитесь окончания.

9) Генерируем ключ центра сертификации (CA) — build-ca

Нажимаем Enter пока не закончатся вопросы.
Вы увидите в командной строке путь C:\Program files\OpenVPN\easy-rsa

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

Нет смысла менять заданные значения. Вы ранее прописали эти параметры в файле vars.bat

10) Генерируем сертификат сервера — команда build-key-server server
Нажимаем Enter (оставляем параметры по умолчанию, прописанные в vars.bat) пока не дойдём до вопросов.
Sign the certificate? (Создание сертификата на 3650 дней)
1 out of 1 certificate requests certified, commit? (Запись сертификата в базу)
На вопросы отвечаем нажатием Y

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

11) Генерируем сертификат клиента build-key client
Нажимаем Enter (оставляем параметры по умолчанию, прописанные в vars.bat) пока не дойдём до вопросов Common Name и Name.
На эти вопросы отвечаем client — это название создаваемого сертификата.

На вопросы Sign the certificate? и 1 out of 1 certificate requests certified, commit? отвечаем нажатием Y

12) Генерация сертификатов окончена.
В папке C:\Program files\OpenVPN\easy-rsa\keys можно увидеть следующие файлы

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

Сертификаты для сервера и клиентов готовы.

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

Подключимся к Mikrotik с помощью программы Winbox.
Загрузим 3 файла: ca.crt, server.crt, server.key
Для этого в меню нажмём Files и перетащим их из папки C:\Program files\OpenVPN\easy-rsa\keys

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

13) Далее необходимо их импортировать.
Откроем System – Certificates — Import и поочерёдно выберем сертификаты в этом порядке:
ca.crt
server.crt
server.key

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

После импорта появится две записи

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

14) Создадим пул адресов для VPN клиентов

IP — Pool — add (+)
Введём название openvpn-pool
Диапазон 172.30.0.2-172.30.0.253

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

15) Создадим PPP профиль.

PPP — Profiles — add (+)
Введём название openvpn
Локальный адрес 172.30.0.1
Созданный Пул openvpn-pool
Остальные настройки оставляем по умолчанию
Нажимаем ОК

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

16) Создадим непосредственно сам OpenVPN сервер
PPP — Interface — OVPN Server
Включаем Enable
Указываем порт 1194
Выбираем наш профиль openvpn
Поставим галочку Require Client Certificate
Выберем наш сертификат server.crt

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

17) Создадим пользователя для подключения.
PPP — Secrets — add (+)
Введём имя пользователя и пароль ovpn_user1
Выбираем Сервис ovpn и профиль openvpn

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

Создадим 2 пользователя:

ovpn_user1 для клиента на компьютере

ovpn_mikrotik1 для клиента на Mikrotik

Рекомендуется для каждого VPN  клиента создавать отдельное уникальное имя пользователя.
В дальнейшем это упростит работу и позволит отслеживать всех подключенных VPN клиентов.

18) Настроим фаервол
IP — Firewall — add(+)
Во вкладке General указываем:
Chain — input
Protocol — tcp
Порт 1194
Интерфейс — ether1 (Если интернет идёт через него)
Вкладка Action:
Action — accept
Затем ОК

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

Сервер настроен, теперь приступим к настройке VPN клиентов.

Настройка VPN клиента на компьютере под управлением Windows

19) Копируем в папку C:\Program files\OpenVPN\config\

из C:\Program files\OpenVPN\easy-rsa\keys следующие файлы
ca.crt, client.crt, client.key.

из C:\Program files\OpenVPN\simple-config\
client.ovpn

Создадим текстовый файл pass, где укажем логин и пароль от созданного VPN клиента на сервере.
В нашем случае это ovpn_user1

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

20) Откроем файл client.ovpn с помощью блокнота или notepad++
Изменяем следующие строки:
#Протокол
proto tcp
#Адрес и порт сервера
remote ваш.ip.адрес.сервера 1194

#Проверяем правильность названия ключей
ca ca.crt
cert client.crt
key client.key

И в самом конце добавим строчку
auth-user-pass «C:\\Program files\\OpenVPN\\config\\pass.txt»
В общем итоге у нас получатся следующие настройки в этом файле:
client
dev tun
proto tcp
remote адрес_сервера 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert user.crt
key user.key
remote-cert-tls server
cipher AES-128-CBC
verb 3
auth-user-pass «c:\\Program Files\\OpenVPN\\config\\pass.txt»

Остальные настройки закоментированы решеткой «#» или точкой с запятой «;»

21) Сохраняем файл. Если сохранить в папку не получается — сохраняем на рабочий стол, а затем копируем с заменой.

Запускаем OpenVPN и подключаемся.

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

После подключения можем увидеть, что нам назначен IP из диапазона, который ранее указали на сервере.

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

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

Имея настроенный OpenVPN сервер, можно настроить доступ на Mikrotik даже там, где нет белого IP адреса.

22) Подключимся к Mikrotik с помощью программы Winbox.
Загрузим 2 файла:  client.crt, client.key

Для этого в меню нажмём Files и перетащим их из папки C:\Program files\OpenVPN\easy-rsa\keys

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

23) Далее необходимо их импортировать.
Откроем System – Certificates — Import и поочерёдно выберем сертификаты в этом порядке:
client.crt
client.key

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

24) Настроим параметры сервера:
PPP — add(+) — OVPN client

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

Во вкладке General указываем имя
Name — openVPN1 (любое, на ваше усмотрение)
Вкладка Dial Out:
Connect To — Адрес сервера(Внешний IP адрес главного hjenthf Mikrotik)
Port 1194
Указываем пользователя и пароль, который мы создали на VPN сервере
В нашем случае это пользователь ovpn_mikrotik1
Сертификат Client.crt

Нажимаем ОК

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

25) В терминале набираем /interface ovpn-client monitor openVPN1
Должно появиться сообщение со статусом connected

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

Теперь к этому mikrotik можно подключиться через VPN по адресу, который он поулчил от VPN сервера

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

Посмотреть адрес можно:
В Mikrotik-клиенте в IP-Adresses строка с нашим интерфейсом openVPN1

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

В Mikrotik-сервере PPP-Active Connections 

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

Вы не знаете, какое решение подойдет именно Вам?
Получить консультацию
Удобство и польза от Wi‑Fi.CLICK
Данные о клиентах
Получайте и анализируйте данные о своих клиентах (пол, возраст, интересы, операторы связи, зоны Wi‑Fi, типы устройств, типы браузера).
Анализ данных
Сбор данных о клиентах: телефон, MAC адрес, зона обслуживания, время, IP адрес, трафик, тип устройства, тип браузера, при идентификации через соц сети – дополнительные данные (пол, возраст, интересы).
Поддержка оборудования
Предлагаемое нами программное обеспечение поддерживается большим количеством роутеров и точек доступа, поэтому для настройки сервиса зачастую достаточно перенастройки существующего оборудования. Стабильная работа сервиса гарантирована на оборудовании Cisco, Mikrotik, Teltonika, Zyxel Keenetic и т.д.
Гибкость настройки
Настроить идентификационное меню, подобрать нужный функционал, настроить любое количество вариантов идентификаций и выбрать поставщика услуг смс и телефонии.

Спасибо за доверие!
Мы свяжемся с вами в ближайшее время.

Спасибо за доверие!
Мы свяжемся с вами в ближайшее время.

Спасибо за доверие!
Мы свяжемся с вами в ближайшее время.