Настройка OpenVPN Сервера и Клиента на MikroTik

В данной инструкции я покажу настройку между двумя Mikrotik OpenVPN Server и Client. Будем делать аутентификацию без сертификата и с ним. Конфигурация с сертификатами требует большой подготовки и ответственности, так как нам нужно всегда думать о сохранности, актуальности и списке отзыва, но не оспоримый плюс — это высокая безопасность. Правилом хорошего тона будет постоянный экспорт сертификатов из роутера на внешнее хранилище, жесткий диск.

Стоит иметь что на оборудовании Mikrotik отсутствуют какие-либо чипы аппаратной разгрузки для OpenVPN. В связи с этим вся нагрузка будет идти через центральный процессор, а значит, что скорость соединений напрямую зависит от загруженности роутера.

Так же OpenVPN на RouterOS v6 не поддерживает следующее:

  • UDP протокол, т.е. необходимо использовать исключительно TCP;
  • LZO сжатие;
  • TLS аутентификация;
  • Аутентификация без имени пользователя и пароля;

Схема сети представлена ниже.
Лабораторная топология сети
Приняв во внимание вышеописанные ограничения и особенности приступим к настройке.
Мы находимся справа внизу в офисе SPB (Office-SPB).
Вводные данные:

  • Office-SPB сервер;
  • Office-Moscow клиент;
  • NetworkCore выполняет роль провайдера, он будет заниматься обычной маршрутизацией;
  • Office-Moscow ether1 смотрит в интернет 172.16.10.2/24;
  • Office-SPB ether1 смотрит в интернет 172.16.11.2/24;
  • Office-Moscow имеет bridge “General-Bridge” в локальной сети 192.168.11.1/24;
  • Office-SPB имеет bridge “General-Bridge” в локальной сети 192.168.10.1/24;
  • IP ПК в локальной сети Office-Moscow 192.168.11.2;
  • IP ПК в локальной сети Office-SPB 192.168.10.2;
  • Адресация в VPN сети 172.16.25.0/24;
  • Версии RouterOS 6.46.2.
Если вы хотите углубить свои знания по работе с роутерами MikroTik, то наша команда рекомендует пройти курсы которые сделаны на основе MikroTik Certified Network Associate и расширены автором на основе опыта . Подробно читайте ниже.

Настройка OpenVPN по логину и паролю

Первым делом проверим доступность через интернет. Я отправлю ping запросы с обоих роутеров, чтобы убедиться, что они друг друга видят. В реальной жизни один из них должен иметь белый (публичный) IP, а именно тот, кто будет выполнять роль сервера.

Тестирование связи между устройствамиСоздание сертификата центра сертификации

На московском роутере открываем System — Certificates.
Импорт ключей OpenVPN

В данном разделе находятся все сертификаты на Mikrotik. Для настройки сервера нам необходимо сделать следующее:

  • Создать сертификат центра сертификации;
  • Создать сертификат сервера.

Нажимаем плюс и задаем параметры согласно скриншоту:

  • Name – имя в списке Mikrotik;
  • Country, Sate, Locality, Organization, Unit – произвольные поля для заполнения;
  • Common Name – самое важное. Указываем уникальное имя;
  • Key Size – длина ключа. Выбирается в выпадающем списке;
  • Days Valid – срок годности.

Задаем параметры сертификата центра сертификации

На данный момент мы создали шаблон.

Подписание! Обращаю внимание, что мы будем создавать самоподписанный корневой сертификат центра сертификации.

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

Меню шаблона сертификата OpenVPN Mikrotik

В открывшемся окне выбираем CA. Обязательно указываем CA CRL Host – список отзыва, можно указать доменное имя.

Нажимаем Start и ждем окончания процесса.
Сертификат центра сертификации OVPN микротике

 

Создание сертификата сервера OpenVPN

Открываем Certificates и нажимаем на плюс.

  • Указываем уникальные имя и Common Name.

Параметры сертификата сервера OVPN Mikrotik

Открываем Key Usage, снимаем галочки с:

  • crl sign;
  • data encipherment;
  • key sert sign;
  • ставим галочку на tls server.

Параметры OpenVPN Server шаблона

Сохраняем. Переходим к подписанию.

Выбираем сертификат в списке. В контекстном меню нам нужен Sign. В Certificate выбираем шаблон ServerOVPN, в CA самоподписанный корневой сертификат. Start.

В списке видим, что наш шаблон превратился в полноценный сертификат. Можем открыть его свойства.
Свойства сертификата сервера OVPN 4

Конфигурирование сервера

Но для начала создадим профиль. PPP – Profiles – жмем +.
Создание профиля OpenVPN

Перед нами открывается окно нового профайла. В строке «Name» задаем понятное нам имя. В строке Local Address указываем IP адрес Mikrotik в VPN. Я указываю 172.16.25.1. Т.е. при подключении клиента автоматически присвоится именно это адрес.
Параметры профиля OpenVPN

Далее переключаем:

  • Change TCP MSS в yes.
  • Use UPnP переключаем в no.

Никогда не оставляйте default если хотите, чтобы все работало именно так, как вы планируете.

Protocols:

  • no для Use MPLS;
  • yes для Use Compression;
  • yes для Use Encryption.

Параметры профиля OpenVPN Server

Далее в Limits ставим no для Only One. Остальные настройки можно не задавать. К примеру, если бы нам нужно было ограничить скорость клиента внутри тоннеля, то нас интересовала вкладка Queue – но это совсем другая история.
Параметры профиля OpenVPN onle one

Теперь можно сохранять. Жмем Apply и OK. В списке должен появиться наш созданный профиль.
Профайл OpenVPN Mikrotik

Нам нужно создать пользователя и пароль, который будет подключаться к нашей сети. Открываем Secrets и жмем +.
Создание пользователя OVPN

Задаем произвольные логин и пароль. Выбираем Service – ovpn, Profile – General-OVPN, Remote Address – 172.16.25.2 т.к. я планирую подключать одного пользователя (рекомендую использовать привязку по IP если хотите гибко управлять Firewall в отношении каждого пользователя). Если вам нужно больше одного, то необходимо создать DHCP Pool. Apply и Ok.
Параметры пользователя OpenVPN

Открываем PPP – Interfaces – OPENV Server.

  • Ставим галочку Enable;
  • Задаем порт (не забываем, что это TCP);
  • Mode – ip;
  • Default Profile – созданный ранее профайл General-OVPN;
  • Certificate – сертификат сервера ServerOVPN;
  • Cipher – aes256.

Параметры OpenVPN сервер по пользователю и паролю

Apply и Ok.

Настройка Firewall

Далее нужно разрешить OpenVPN трафик на роутере.

Добавляем правило.
Создание правила Firewall для PPTP

Action – accept.
Параметры правила фаервола OVPN - accept

Сохраняем и переходим к клиентской части.

Конфигурирование клиента

Подключаемся к питерскому роутеру и в PPP создаем новый интерфейс OVPN Client.
Создание OpenVPN Client интерфейса

Задаем имя интерфейса.
Имя OpenVPN Client интерфейса

Открываем Dial Out и заполняем обязательные параметры.
Параметры OVPN Client интерфейса

Сохраняем и открываем вкладку Status.
Статус OVPN Client интерфейса по сертификату

Здесь мы видим статус подключено, шифрование и время жизни соединения. Вы спросите, а где же IP адрес клиента? Он по каким-то причинам не отображается в окне статуса интерфейса, зато есть в IP-Address. Возможно, ошибка, в данной прошивке. Попробуем проверить доступность московского роутера через VPN.
Проверка соединения OVPN по сертификату

Ping-и идут, а значит с соединением все хорошо.

Настройка OpenVPN по сертификату

Здесь мы рассмотрим как настроить подключение по сертификату, выполним экспортирование и эмпортирование ключей для клиента и сервера.

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

Ранее мы настроили аутентификацию по логину и паролю. Настроить аутентификацию только по клиентскому сертификату не получится в связи с ограничением операционной системы. Подключаемся на московский роутер, открываем Certificates и создаем новый шаблон.
Создание сертификата клиента OVPN

Key Usage. Обязательно ставим галочку на tls client.
Параметры OpenVPN Client шаблона

Сохраняем изменения и нажимаем Copy. Выбираем наш шаблон для пользователей и создаём копию. В Common Name уникальное имя. Далее нажимаем Apply и Sign.
Создание сертификата клиента OVPN

В открывшемся окне по аналогии с предыдущих примеров выбираем корневой сертификат и жмем Start.
Генерация пользовательского сертификата OpenVPN

Далее нужно экспортировать и импортировать ключи на клиентский Mikrotik. Выбираем в списке и жмем Export.

Для того чтобы выгрузить открытый и закрытый ключи, вбиваем пароль в поле Export Passphrase. Export.
Экспорт ключей OVPN Mikrotik

Далее нужно экспортировать открытую часть CA.
Экспорт открытого ключа CA

Переходим в Files, выбираем 3 созданных файла и перетаскиваем на рабочий стол.
Копирование ключей OpenVPN Mikrotik

В настройках OVPN Server выставим чтобы проверялись клиентские сертификаты при подключении.
Проверять клиентские сертификаты OVPN при подключении

 

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

После экспорта и копирования ключей подключимся к питерскому роутеру. Открываем Files и переносим с рабочего стола 2 файла скопированных ранее.
Копирование ключей OpenVPN Mikrotik на клиента

Переходим в Certificates и импортируем открытый и закрытый ключи.
Импорт ключей OpenVPN

В выпадающем списке выбираем открытый ключ и вписываем пароль. Import.
Импорт открытого ключа OpenVPN

Тоже самое с закрытым ключом.

Далее импортируем CA.
Импорт сертификата CA OpenVPN

Открываем ранее созданный OVPN Client интерфейс, выбираем импортированный сертификат и требуем проверку серверного.
Настройка клиенского интерфейса OpenVPN по сертификату

Соединение установилось.
Статус OVPN Client интерфейса по сертификату

Проверим его.
Проверка соединения OVPN по сертификату

А вот и не все! Упустили важную вещь – список отзыва. Так как наш клиент использует DNS 8.8.8.8, есть вероятность, что Google понятия не имеет какой IP адрес скрывается за доменным именем crl-ovpn.ru – его мы указывали, когда создавали сертификат для CA. Нужно это быстро исправить. На клиенте в IP – DNS создаем статическую A запись.
Создание статической A записи в DNS Mikrotik

На этом все, мы рассмотрели настройку OpenVPN (OVPN) между двумя роутерами микротик, один из них выступал в роли сервера а второй в роли клиента. Если у вас остались вопросы задавайте их в комментариях или нашей группе Телеграмм.

89 вопросов по настройке MikroTik

Вы хорошо разбираетесь в Микротиках? Или впервые недавно столкнулись с этим оборудованием и не знаете, с какой стороны к нему подступиться? В обоих случаях вы найдете для себя полезную информацию в курсе «Настройка оборудования MikroTik». 162 видеоурока, большая лабораторная работа и 89 вопросов, на каждый из которых вы будете знать ответ. Подробности и доступ к началу курса бесплатно тут.

Оцените статью
MikroTikLab
Добавить комментарий

  1. FLq

    все работает кроме проверки серверного сертификата… если ставлю проверка серверного сертификата, подключения не происходит

    Ответить
    1. Admin26

      Здравствуйте! Задайте ваш порос в нашей телеграмм группе, там много специалистов они вам помогут https://tlgg.ru/mikrotiklab

      Ответить
Adblock detector