IPsec client-to-site (удаленное подключение с мобильных устройств)

IPsec client-to-site (удаленное подключение с мобильных устройств) Хостинг

Ниже преведён пример настройки L2TP/IPsec туннеля между двумя роутерами Mikrotik.
Настройки первого роутера:
WAN интерфейс — ether1
WAN IP — 10.0.0.101/24
LAN интерфейс — bridge-local
LAN IP — 192.168.10.0/24

Настройки второго роутера:
WAN интерфейс — ether1
WAN IP — 10.0.0.102/24
LAN интерфейс — bridge-local
LAN IP — 192.168.20.0/24

IPsec client-to-site (удаленное подключение с мобильных устройств)

Материал из MikroTik Wiki

В статье разбирается настройка L2TP- и L2TP/IPSec-туннеля на оборудовании MikroTik с целью подключения рабочего места сотрудника (client-to-site VPN). После создания VPN-канала между сетями будет работать маршрутизация и будет выполнена проверка работоспособности. Также будут разобраны типичные проблемы, которые могут возникнуть в процессе настройки и проверки.

Ранее мы писали про установку и базовую настройку Mikrotik CHR на виртуальные серверы. В этой статье мы выполним настройку VPN-сервера на базе Cloud Hosted Router и подключим клиентские устройства к настроенному VPN.

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

  • 1 vCPU;
  • 512 МБ RAM;
  • 5 ГБ быстрый диск.

Операционной системой выбрана актуальная на момент написания статьи Stable-версия RouterOS: 6.47.6. Мы предполагаем, что читатель уже установил MikroTik CHR и провел первичную настройку.

Несмотря на то, что в статье описана настройка на Cloud Hosted Router, эта инструкция может использоваться и для физических маршрутизаторов с RouterOS.

В этой статье мы покажем, как сделать настройку L2TP Server с IPSec на MikroTik. Постараемся детально описать все нюансы и тонкости конфигурирования.

На сегодняшний день есть множество способов организовать VPN, но на мой взгляд L2TP является оптимальным выбором, так как данный протокол существует во всех ОС и имеет ряд преимуществ о которых мы поговорим ниже.

Настройка L2TP MikroTik для многих может оказаться не такой уж и простой задачей. Давайте разберемся на практике, так ли это сложно?

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Протокол L2TP не предоставляет механизмов шифрования, поэтому рассмотрим связку L2TP IPSec для подключения удаленных устройств к корпоративной сети. Узнаем как выполнить настройку туннеля L2TP IPSec между MikroTik, что позволит объединить офисы по данной технологии.

L2TP — это туннельный протокол служащий для организации виртуальных частных сетей, объединивший в себе лучшие функции протоколов PPTP (Microsoft) и L2F (Cisco).

IPSec – это набор протоколов служащий для шифрования, аутентификации и обеспечения защиты при отправке IP-пакетов. Основное применение нашел при организации VPN-соединений.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Редактируем параметры easy-rsa OpenVPN.

После установки идем в папку с программой, в каталог easy-rsa

IPsec client-to-site (удаленное подключение с мобильных устройств)

и открываем с помощью блокнота файл vars.bat.sample, редактируем его.

Если мы создаем дубликат папки easy-rsa (а в этом есть смысл) и работаем в нем, то необходимо отредактировать строку, прописав в ней новый путь к папке:

set KEY_SIZE=1024 можно поменять на 2048 (как сказано в комментариях в файле — если вы параноик), но учтите, что производительность уменьшится.

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

Последние два параметра можно не менять.

После чего сохраняем файл под именем vars.bat.

Если при сохранении vars.bat в этом же каталоге система выдает ошибку:

IPsec client-to-site (удаленное подключение с мобильных устройств)

то сохраните файл вначале на рабочем столе, а потом перенесите в этот каталог.

Выполняем генерацию сертификатов для OpenVPN под MikroTik.

Работаем в командной строке Windows (cmd), запустив ее от имени администратора.

Переходим в нужный каталог: cd «C:Program FilesOpenVPNeasy-rsa»

Набираем команду vars и жмем энтер.

Набираем команду clean-all и жмем энтер.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Если мы видим надпись, как на изображении — «Скопировано файлов — 1.», значит, все сделано правильно.

Набираем команду build-ca. Программа начинает генерацию публичного сертификата OpenVPN и запрашивает у нас значения параметров. Если на вопрос в командной строке мы просто жмем энтер, то программа подставляет значения по умолчанию, которые мы вписали в файл vars.bat. Останавливаемся, когда снова появляется строка

IPsec client-to-site (удаленное подключение с мобильных устройств)

Даем команду на генерацию сертификата сервера OpenVPN для MikroTik: build-key-server имя_сертификата. В нашем случае пишем

build-key-server server, на вопрос «Sign the certificate?» отвечаем y, точно также на вопрос «1 out of 1 certificate requests certified, commit?», на остальные просто жмем энтер.

IPsec client-to-site (удаленное подключение с мобильных устройств)

IPsec client-to-site (удаленное подключение с мобильных устройств)

Все, теперь в папке C:Program FilesOpenVPNeasy-rsakeys лежат все созданные ключи и сертификаты OpenVPN.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Время на прочтение

Эта статья о том, как перестать мучиться с сертификатами для IKEv2-RSA и их установкой.

В Интернете есть множество статей и видео по настройке аутентификации IKEv2 с использованием сертификатов. Главная проблема такой конфигурации — необходимость генерации множества сертификатов, доставки и установки их на каждое клиентское устройство. Довольно замороченный процесс, согласитесь?

В седьмой версии RouterOS появились очень полезные функции, которые позволяют превратить MikroTik в полноценный VPN‑сервер. Среди того, что существенно облегчает жизнь админу для нашей задачи очень подходят два новшества:

Теперь, для отдельно взятого vpn‑сервера MikroTik больше не требуется сторонний генератор и установщик сертификатов. Механизм запроса и установки действительного сертификата от Let’s Encrypt позволяет сделать это за несколько секунд. Встраиваемый Radius‑сервер решает проблему отсутствия такового в небольшой локальной сети или невозможности использования по иным причинам.

Содержание
  1. Важное уточнение по сертификатам от Let’s Encrypt в составе ОС.
  2. Схема сети
  3. Простая настройка
  4. Site to site
  5. Настройка firewall
  6. 89 вопросов по настройке MikroTik
  7. Mikrotik. Настройка L2TP Server
  8. Настройки L2TP-сервера на первом роутере
  9. Шаг 4. Запускаем сервер L2TP
  10. Настройка филиала (L2TP Client)
  11. Настройки файрвола
  12. Полезные материалы по MikroTik
  13. Зачем
  14. Настройка клиента OpenVPN
  15. Шаг 5. Тюним IPsec
  16. Настройка туннеля L2TP + IPSec на Mikrotik (site-to-site). Объединяем два офиса
  17. Настройка Mikrotik L2TP Server. Главный офис
  18. Настраиваем Secret
  19. Включаем L2TP Server и IPSec
  20. Создаем интерфейс
  21. Настройка MikroTik RouterOS. Подготовка
  22. Получение и установка дополнительного пакета user-manager на MikroTIk
  23. Настройка IKEv2
  24. Настройки IPsec-сервера на первом роутере
  25. Настройки L2TP-клиента на втором роутере
  26. Настройки IPsec-клиента на втором роутере
  27. Настройка маршрутизации межу офисами
  28. Установка сертификатов OpenVPN и настройка сервера на MikroTik
  29. Шаг 7. Настраиваем клиента Windows
  30. Проверка
  31. Подключаем клиента windows.
  32. Скрипт для IPsec-клиентов с динамическим IP-адресом
  33. Шаг 2. Профиль для VPN-подключения
  34. Шаг 3. Секреты
  35. Настройка подключения на стороне клиента
  36. Настройка маршрутизации L2TP-клиента
  37. Шаг 6. Файрволл
  38. Шаг 1. Диапазон адресов клиентов
  39. Настройка L2TP Server + IPSec на Mikrotik (client-to-site)
  40. Создаем пул адресов
  41. Профиль подключения
  42. Создание пользователя
  43. Заключение

Важное уточнение по сертификатам от Let’s Encrypt в составе ОС.

Необходимо убедиться, правильно ли на клиенте установлены действующие сертификаты от Let’Encrypt. Это важно не только для нашей задачи, но и для корректной работы других служб и приложений использующих сертификаты.

Дело в том, что цепочка доверия Let’s Encrypt выглядит на сегодня так:

IPsec client-to-site (удаленное подключение с мобильных устройств)

Иерархия сертификатов Let’s Encrypt

Все автоматически выдаваемые клиентам‑микротикам сертификаты подписаны от имени R3.В клиентской ОС Windows сертификат R3 обязательно должен быть установлен как «промежуточный доверенный центр сертификации» в хранилище КОМПЬЮТЕРА (Local Machine). Самая распространенная проблема при импорте сертификата обычно находится в метре от ПК и кликает «мышкой». ОС Windows по‑умолчанию пытается данный сертификат установить в хранилище пользователя, что ведет к проблемам доступа.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Выбор правильного хранилища для сертификата

  • Внешний IP (FQDN): gw1.mt-courses.ru
  • Локальная сеть: 10.10.4.0/24
  • Адреса для ikev2-клиентов: 192.0.2.0/24
  • Маршрутизатор под управлением MikroTik RouterOS версии 7.x

Это продолжение предыдущих двух статей (Первая) и (Вторая) в которых мы показали как настроить L2TP на MikroTik без IPSec, теперь же прикрутим его к нашей конфигурации.

IPSEC – это целый набор протоколов, обеспечивающих защиту данных IP через сеть интернет. Несомненно, он один из самых безопасных реализаций VPN, но ложкой дегтя является сложность настройки. Некоторые модели RouterBOARD имею встроенные чипы разгрузки для алгоритмов AES, это сделано для того, чтобы не нагружать центральный процессор сложной обработкой. Ознакомиться более подробно со списком оборудования поддерживающих аппаратную разгрузку можно на сайте mikrotik.com.

В нижеизложенной инструкции будет продемонстрировано конфигурирование классического IPSEC, а не IKEv2. На основе предыдущих статей я покажу два режима настройки L2TPIPSec в транспортном режиме на роутере микротик. По сложившейся практике предпочтительно делать именно в транспортном режиме, т.к. удобнее прописать маршруты в локальные сети через адреса в туннелях вместо создания NAT правил. В добавок про NAT отмечу, что IPSEC-у становится дурно, когда он проходит через него. Не плохо реализована поддержка NAT-T. Взяв во внимание вышеизложенную информацию приступим.

Если вы хотите углубить свои знания по работе с роутерами MikroTik, то наша команда рекомендует пройти курсы которые сделаны на основе MikroTik Certified Network Associate и расширены автором на основе опыта . Подробно читайте ниже.

Схема сети

IPsec client-to-site (удаленное подключение с мобильных устройств)

Используем лабораторный стенд с Mikrotik CHR версии 6.46.2 на борту. Мы находимся справа внизу в офисе 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;
  • Активный L2TP туннель между офисами.
Читайте также:  Откройте для себя высококачественные мячи SMB для оптимальной производительности

Простая настройка

Предполагает быстрое развертывание на сервере и клиенте. Она более всего подходит для инсталляций, когда вы планируете чтобы к вам подключалось много мобильных устройств или устройств находящихся за NAT-ом. На московском роутере проверим состояние клиентского подключения. Переходим PPP – Interface – SPB-Office – Status.

IPsec client-to-site (удаленное подключение с мобильных устройств)

С соединением все в порядке. В строке Encoding видим стандартное шифрование протокола L2TP. Открываем свойства сервера L2TP. Ставим required на параметре Use IPsec и указываем пароль.

Сохраняем. Клиентское соединение пропадает, т.к. теперь мы требуем согласование протокола IPSEC. Видим соответствующее сообщение в логах сервера. Оно говорит о том, что подключение было отброшено.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Если вы установите значение Use IPsec в yes, то все желающие подключиться без использования IPSEC – подключатся.

Подключаемся к клиентскому Mikrotik в Питере, открываем PPP – Interface – выбираем интерфейс to-MSC и открываем вкладку Dial Out. Ставим галочку на UseIPsec и задаем пароль, установленный на сервере.

IPsec client-to-site (удаленное подключение с мобильных устройств)

После нажатия кнопки Apply проверим состояние подключения на вкладке Status.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Строка Encoding изменилась на более внушительное значение, что символизирует об успешном согласовании.

Site to site

Все настройки находятся в IP – IPSEC. Данный метод предназначен для развёртывания между удаленными площадками. Обязательным условием является наличие статических публичных адресов для обоих участников туннеля. Параметры идентичны, за исключением маленьких деталей. Отлично подходит для голосового трафика, т.к. все данные будут инкапсулированы в UDP. Запасаемся терпением и вниманием. Надеюсь, что все помнят простое правило по неиспользованию стандартных профилей. Создаем одинаковый профиль на обоих устройствах.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Далее создаем предложения.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Далее нужно создать пиров. Направляем их друг на друга и указываем раннее созданные профили. Пишем в поле Local Address тот адрес роутера, с которого хотите инициировать соединение. Это особенно актуально если у вас их несколько или нужно инициировать соединение с определенного. Т.к. у нас всего по одному адресу – укажем их.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Далее создаем группы.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Еще не все. Следующий пункт — Identity.

IPsec client-to-site (удаленное подключение с мобильных устройств)

И вишенкой на торте Policies. На вкладке General указываем адреса источника и назначения. Соответственно направляем друг на друга. 1701 это UDP порт L2TP.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Переходим в Action. Обязательно выбираем параметр Level в unique. Особенно полезно будет для тех, кто планирует много шифрованных туннелей.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Сохраняем и проверяем.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Established в конце строки пира SPB означает что согласование прошло успешно и оно устоялось. Откроем Installed SAs и посмотрим на наши ключики.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Все как мы и заказывали. Ну и наконец проверим наше L2TP соединение. Все должно зашифроваться без переподключений.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Настройка firewall

Тут  также, как и с предыдущим пунктом. Настраиваем одинаково с обоих сторон. Нужно отредактировать созданные правила на московском роутере, а на питерском создаем с нуля аналогичные. В первом правиле кроме порта для L2TP добавляем еще два:

IPsec client-to-site (удаленное подключение с мобильных устройств)

Создадим еще одно правило для IPSEC-ESP.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Перемещаем его над последним правилом.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Повторив параметры фаервола на питерском роутере, обязательно проверьте что соединение L2TP подключается и шифруется соответствующими алгоритмами. На этом мы закончили цикл статей про настройку L2TP клиента и сервера как с IPSec так и без него. Если у вас остались вопросы задавайте из в комментариях а лучше в группу Теллеграмм.

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

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

Mikrotik. Настройка L2TP Server

Рассмотрим детальную настройку двух видов туннелей L2TP + IPSec:

Настройки L2TP-сервера на первом роутере

1. Создаем пул адресов для транзитной сети (здесь 192.168.254.0/26)

/ip pool
add name=l2tp-pool ranges=192.168.254.2-192.168.254.62

2. Создаем PPP-профиль для подключения, шифрование включать не нужно, т.к. будет использоваться IPsec

/ppp profile
add change-tcp-mss=yes local-address=192.168.254.1 name=l2tp remote-address=l2tp-pool

3. Заводим PPP-аккаунт для клиента

/ppp secret
add name=client1 password=secret1 profile=l2tp service=l2tp

3. Настраиваем и включаем L2TP-сервер

/interface l2tp-server server
set authentication=mschap2 default-profile=l2tp enabled=yes keepalive-timeout=15 max-mru=1418 max-mtu=1418

Шаг 4. Запускаем сервер L2TP

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

IPsec client-to-site (удаленное подключение с мобильных устройств)

Здесь, кстати, важный нюанс – для шифрования будем
использовать . Серьёзных
уязвимостей протокол не имеет, поэтому этого нам будет достаточно. Нужно
указать предварительный ключ – в примере на скрине это слово «». Можно придумать что-нибудь
посекурнее, например «123» или «»
— каждый решает сам

Настройка филиала (L2TP Client)

Создадим свой профиль для подключения:

На вкладке «General» укажем имя профиля:

Далее откроем вкладку «Protocols», установим обязательное шифрование:

  • Use Encryption: Yes;
  • OK.

Добавляем L2TP Client:

Вкладка «Dial Out»:

  • Password – пароль учетной записи;
  • Profile – профиль подключения созданный в предыдущем шаге;
  • Устанавливаем галочку на пункте Use IPSec, активируя набор протоколов шифрования;
  • IPsec Secret – вводим ключ шифрования IPSec как на сервере;
  • В разделе Allow оставляем метод аутентификации mschap2.

Ждем некоторое время. Если мы все сделали правильно, то увидим букву “R” слева от имени подключения:

Статус туннеля можем посмотреть, зайдя в настройки интерфейса:

Здесь мы видим дату и время, когда туннель поднялся (Last Link Up Time), количество разрывов соединения (Link Downs), время жизни соединения (Uptime), метод шифрования (Encoding) и другие параметры.

Осталось настроить маршрутизацию между подсетями.

Настройки файрвола

Сервер должен принимать:
UDP:1701 — L2TP, но только по IPsec
UDP:500 — IPsec, установление соединения
UDP:4500 — IPsec, для обхода NAT
IP протокол 50 — IPsec ESP

Отмечаем ESP пакеты, L2TP будем принимать только в них

/ip firewall mangle
add action=mark-packet chain=input new-packet-mark=esp protocol=ipsec-esp

/ip firewall filter
add chain=input comment=L2TP dst-port=1701 packet-mark=esp protocol=udp src-address=10.0.0.102
add chain=input comment=IPSEC-NAT dst-port=4500 protocol=udp src-address=10.0.0.102
add chain=input comment=IPSEC dst-port=500 protocol=udp src-address=10.0.0.102
add chain=input comment=IPSEC protocol=ipsec-esp src-address=10.0.0.102

Клиенту достаточно принимать пакеты в состоянии established

Полезные материалы по MikroTik

На Telegram-канале Mikrotik сэнсей можно получить доступ к закрытой информации от официального тренера MikroTik. В апреле и мае 2023 будут разбираться темы Wi-Fi и QoS. Подписывайтесь

Зачем

Организация VPN-подключений может использоваться в различных сценариях:

  • Подключение удалённых клиентов к корпоративной сети (работа на дому, из командировок).
  • Объединение сегментов локальной сети двух офисов, находящихся на удалении.

Несмотря на великое множество различных протоколов и типов VPN, применительно к Mikrotik чаще всего используется связка L2TP + IPsec, т.к. для клиентов на основе Microsoft Windows не требуется установка дополнительного программного обеспечения (в отличие от OpenVPN, например), что существенно облегчает интеграцию пользователей, не обладающих высоким навыком работы на компьютере.

Итак, настраиваем сервер и клиент L2TP + IPsec.

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

Если мы не используем клиентские сертификаты (в настройках сервера не отмечали галочкой пункт require-client-certificate), то настроить клиент OpenVPN будет быстрее и проще. Нам не нужно будет копировать сертификаты для клиента, только создать в меню PPP — Interfaces новую запись OVPN Client и и на вкладке Dial Out прописать:

  • адрес OpenVPN сервера (поле Connect To),
  • тип аутентификации и шифрования (поля Auth и Cipher).

Если мы используем сертификаты, читаем дальше.

Настройка второго роутера Микротик как клиента OpenVPN.

Так же, как и при настройке сервера, копируем из папки C:Program FilesOpenVPNeasy-rsakeys и вставляем в файлы сертификатов и ключей OpenVPN. Только теперь это будут:

  • ca.crt,
  • client.crt,
  • client.key.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Далее настраиваем соединение, практически так же, как и в случае без сертификатов. Создаем в меню PPP — InterfacesOVPN Client и и на вкладке Dial Out

  • адрес OpenVPN сервера (поле Connect To),
  • тип аутентификации и шифрования (поля Auth и Cipher).

IPsec client-to-site (удаленное подключение с мобильных устройств)

Все, осталось проверить, поднялось ли соединение.

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

Копируем ранее созданные нами файлы папки C:Program FilesOpenVPNeasy-rsakeys в каталог C:Program FilesOpenVPNconfig.

Файл сохраняем. Запускаем OpenVPN GUI  (исполняемый файл лежит в папке C:Program FilesOpenVPNin)

Запускаем обязательно от имени администратора!

Шаг 5. Тюним IPsec

Важнячок: «из коробки» мой глючил и
не давал подключиться. Решение было такое: идём в – и
создаём новую группу в разделе .
А потом на вкладке «»
добавить политику, указав нашу новую группу в качестве шаблона. Видимо какой-то
глюк, но с ним многие сталкивались.

IPsec client-to-site (удаленное подключение с мобильных устройств)

IPsec client-to-site (удаленное подключение с мобильных устройств)

Включить L2TP-сервер. Не смотря на то, что L2TP не несет в себе нормального шифрования, лучше оставить только аутентификацию «mschap2» как наиболее надежную.

Создать пул адресов для VPN-подключений:

Создать профиль для VPN подключений. Указать адрес сервера DC1, который является DNS и WINS сервером. Без указания DNS и WINS VPN-подключение произойдет, но не будет возможности обращаться к узлам по именам.

Читайте также:  Демистифицируем порядок обработки Nginx для обеспечения бесперебойной работы

Добавить аккаунт пользователя:

На интерфейсе маршрутизатора, который смотрит в локальную сеть включить arp-proxy. Это нужно для того, чтобы удаленный клиент мог связываться с локальными хостами:

Создать профиль IPSec для подключения клиента (адрес 0.0.0.0/0 т.к. удаленный адрес клиента неизвестен):

/interface l2tp-server serverset authentication=mschap2 enabled=yes

/ip pooladd name=vpn-pool ranges=172.16.30.102-172.16.30.253

/ppp profileadd name=»L2TP client-to-site» change-tcp-mss=yes local-address=172.16.30.101 remote-address=vpn-pool dns-server=192.168.15.10 wins-server=192.168.15.10

/interface ethernetset ether1-LAN1 arp=proxy-arp

Настройка туннеля L2TP + IPSec на Mikrotik (site-to-site). Объединяем два офиса

Попробуем объединить два офиса фирмы в одну виртуальную частную сеть (VPN) используя туннельный протокол L2TP в связке с IPSec на оборудовании Mikrotik.

Из схемы мы видим, что Mikrotik в главном офисе (GW1), будет настроен на роль L2TP Server + IPSec, со следующими настройками:

  • Внешний IP (WAN): 111.111.111.111;
  • Адрес в LAN сети: 192.168.13.254.

MIkrotik в филиале (GW2) будет являться VPN-клиентом с настройками:

  • Внешний IP (WAN): 222.222.222.222;
  • Адрес в LAN сети: 192.168.12.254.

Приступаем к настройке.

Настройка Mikrotik L2TP Server. Главный офис

У Mikrotik в меню PPP есть два профиля по умолчанию, которые используются для PPP соединений. Рекомендуется не изменять профили по умолчанию, а создать и использовать под свою задачу новый.

В окне New PPP Profiles, открыв, вкладку “General” укажем информацию:

  • Name: l2tp-site-to-site;
  • Local Address: 192.168.77.1;
  • Remote Address: 192.168.77.10.

Рекомендуем для туннеля вида Site-to-Site назначить статические IP.

  • произвольное имя для профиля(Name);
  • присвоили IP для L2TP-Сервера (Local Address);

Настраиваем Secret

На вкладке «Secrets» мы настраиваем имя, пароль и профиль подключения для L2TP-Клиента. Для этого выполним действия:

  • Name: office;
  • Password: qwas1234;
  • Profile: из выпадающего списка выбираем ранее созданный профиль (l2tp-site-to-site).

Рекомендуем придумывать сложные пароли. Минимум 12 символов разного регистра с использованием спец. символов.

Включаем L2TP Server и IPSec

Следующим шагом включим L2TP Server на Mikrotik указав профиль, метод аутентификации и ключ шифрования для IPSec. Выберем пункт меню Interface, настроим как показано на рисунке ниже:

Не забываем придумывать сложные пароли.

Создаем интерфейс

Создадим статический интерфейс L2TP Server Binding. Это позволит избежать проблемы с маршрутизацией между сетями, которые могут возникнуть при разрыве соединения.

Заполним открывшееся окно New interface. Вкладка «General»:

Добавим правила в наш файрвол, тем самым разрешая трафик для L2TP, два правила для IPSec и протокол Ipsec-esp:

Добавим разрешающее правило для L2TP, который работает на 1701(UDP) порту:

Добавим правило для UDP портов 4500, 500:

Разрешим протокол IPsec-esp:

Очень важен порядок расположения правил. Ваш firewall после настроек должен выглядеть примерно следующим образом:

Для более глубокого понимания работы брандмауэра рекомендуем ознакомиться со статьей MikroTik настройка firewall.

На этом настройка L2TP Server Mikrotik закончена, перейдем к настройке клиентской части (филиала).

Настройка MikroTik RouterOS. Подготовка

Необходимые условия: на роутере должен быть открыт и доступен извне порт http (tcp:80). По‑умолчанию, на этом порту работает служба webfig. Доступ к ней извне всем подряд оставлять крайне НЕ рекомендуется, так что можно открывать порт только в момент генерации/обновления сертификата.

Также желательно наличие FQDN связанного с внешним IP вашего MikroTik. Например, gw1.mt‑courses.ru.

Скрипт получения сертификата:

Flags: K — PRIVATE‑KEY; A — AUTHORITY; I, R — REVOKED; T — TRUSTEDColumns: NAME, COMMON‑NAME

0  K T letsencrypt‑autogen_2023–xx–xxThh:mm:ssZ gw1.mt‑courses.ru

Получение и установка дополнительного пакета user-manager на MikroTIk

IPsec client-to-site (удаленное подключение с мобильных устройств)

Обратите внимание, чтобы номер версии пакета точно соответствовал установленной версии RouterOS! Невозможно установить пакеты версии, отличающейся от версии установленной на роутере операционной системы.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Содержимое архива extra-packages

Данный файл необходимо извлечь из архива, скопировать в корень файловой системы маршрутизатора MikroTik и произвести перезагрузку (/system reboot ).

IPsec client-to-site (удаленное подключение с мобильных устройств)

Настройка IKEv2

Теперь переходим к самому основному, собственно настройке VPN‑сервера доступа по протоколу IKEv2. Поскольку при подключении клиента, ему выделяется некий виртуальный IP‑адрес, то сначала нам необходимо создать пул адресов для подключаемых клиентов:

/ip/pool add name=vpn-pool ranges=192.0.2.1–192.0.2.254

Переходим непосредственно к настройке IPSec. Настройка IPSec требует создания нескольких сущностей:

IPsec client-to-site (удаленное подключение с мобильных устройств)

Пункты настройки IPSec в меню Winbox

Group используется как тег для связывания Identity и Policy Template для генерации индивидуальных Policy из шаблона (template) при подключении клиента. По сути, Identity, это то, что собирает во едино все настройки, когда клиент подключится к серверу. По этому Identity настраивается в последнюю очередь, когда остальные параметры созданы.

Здесь хочу дать вам совет: Никогда. Н‑и-к‑о-г‑д-а, без острой необходимости не изменяйте в RouterOS профили с названием «Default», если точно НЕ знаете, как это повлияет на дальнейшую работу. В Winbox всегда есть возможность создать копию профиля и проводить эксперименты с копией. В консоли тоже есть такая возможность — ключевое слово «copy‑from=».

1,2) Для наглядности создадим копии имеющихся Proposal и Profile. При этом отключим в Proposal PFS:

/ip/ipsec/proposal
print
add copy-from=0 name=proposal-ike2 pfs-group=none
/ip/ipsec/profile
print
add copy-from=0 name=profile-ike2

IPsec client-to-site (удаленное подключение с мобильных устройств)

Новые наборы параметров для IKEv2

3) Создадим отдельную Group для Policy:

/ip ipsec policy group add name=ike2

IPsec client-to-site (удаленное подключение с мобильных устройств)

Группа для генерации policy

4) Создаем шаблон Policy Template для подключенных пиров, получивших адрес из пула 192.0.2.0/24:

/ip/ipsec/policy add dst-address=192.0.2.0/24 group=ike2 proposal=proposal-ike2 src-address=0.0.0.0/0 template=yes

IPsec client-to-site (удаленное подключение с мобильных устройств)

Новый шаблон Ploicy Template ссылается на Proposal с шага 1 и на Group с шага 3

5) Создаем шаблон пира (клиента):

/ip/ipsec/peer add exchange-mode=ike2 name=peerike2 passive=yes profile=profile-ike2

IPsec client-to-site (удаленное подключение с мобильных устройств)

6) Создаём mode‑config. Это набор параметров, которые будут переданы клиенту, включая адрес DNS‑сервера и маршруты до локальных сетей. В примере клиенту передается маршрут до локальной сети 10.10.4.0/24:

/ip/ipsec/mode-config
add address-pool=vpn-pool name=ike2-modconf split-include=10.10.4.0/24 system-dns=yes

IPsec client-to-site (удаленное подключение с мобильных устройств)

Новый modeconf с параметрами для передачи клиенту. Ссылается на Pool

7) Создаем итоговый identity. В нем мы также будем использовать ссылку на полученный сертификат от Let’s Encrypt:

/ip/ipsec/identity
add auth-method=eap-radius certificate=letsencrypt-autogen_2023-xx-xxThh:mm:ssZ generate-policy=port-strict mode-config=ike2-modconf peer=peerike2 policy-template-group=ike2

IPsec client-to-site (удаленное подключение с мобильных устройств)

Identity ссылается на Radius, Group, Modeconf и сертификат Let’s Encrypt

/radius
add address=127.0.0.1 secret=MySuperPass1234 service=ppp,ipsec
/radius incoming
set accept=yes

IPsec client-to-site (удаленное подключение с мобильных устройств)

IPsec client-to-site (удаленное подключение с мобильных устройств)

Описание доступа для vpn-сервера и одного пользователя

Настройки IPsec-сервера на первом роутере

1. Настройка IPsec-пира, IPsec политика будет создаваться автоматически, при подключении клиента (с динамическим созданием политики, роутер может принимать подключения от множества VPN-клиентов без донастройки. В данном случае VPN-канал поднимается между двумя роутерами и можно настроить статическую политику, как на втором роутере). Пароль, который будет использоваться при аутентификации и генерации секрета для шифрования соединения, задается в параметре secret

2. Настройка алгоритмов для шифрования и подписи соединения

/ip ipsec proposal
set defaul auth-algorithms=sha1 enc-algorithms=aes-128 name=default

ПРИМЕЧАНИЕ: 1. Если не указать значение address=0.0.0.0/0 для peer, оно будет подставлено автоматически, но работать IPsec не будет — баг RouterOS.
2. nat-traversal=yes для peer следует указывать, только если часть клиентов будет подключаться из-за NAT.

Настройки L2TP-клиента на втором роутере

Настраиваем и включаем L2TP-клиент

ПРИМЕЧАНИЕ: 1. Значение MTU 1418 — максимальное значение, при котором не будет фрагментации с использованием IPsec с алгоритмами SHA1 для подписи и AES-128 для шифрования. При использовании других алгоритмов значение MTU будет другим. Если используется механизм обхода NAT IPsec, следует понизить MTU на 28.
2. На этом этапе следует проверить работоспособность L2TP-подключения.

Настройки IPsec-клиента на втором роутере

2. Настройка политики IPsec

/ip ipsec policy
add action=encrypt ipsec-protocols=esp level=require proposal=default protocol=udp sa-src-address=10.0.0.102 src-address=10.0.0.102/32 src-port=any sa-dst-address=10.0.0.101 dst-address=10.0.0.101/32 dst-port=any tunnel=no

Настройка маршрутизации межу офисами

Пропишем маршруты на обоих роутерах Mikrotik. Так подсети увидят друг друга.

Для начала зайдем на роутер главного офиса (GW1), выполним следующие действия:

Укажем удаленную подсеть и шлюз, который будет обрабатывать запросы:

  • Dst. Address – Адрес удаленной подсети (филиал);
  • Gateway – шлюз (созданный интерфейс в предыдущем шаге), который будет обрабатывать запросы с сети филиала.

Затем зайдем на Mikrotik филиала (GW2), добавим маршрут:

Укажем подсеть главного офиса и назначим Gateway:

  • Dst. Address – адрес удаленной подсети (главный офис);
  • Gateway – шлюз (созданный интерфейс), который будет обрабатывать запросы с сети главного офиса.

Теперь филиалы видят друг друга. На этом настройка L2TP + IPSec между роутерами Mikrotik (Site-to-site), закончена.

Установка сертификатов OpenVPN и настройка сервера на MikroTik

Из созданных нами сертификатов и ключей нас интересуют 3 файла:

Импортируем сертификаты OpenVPN в ОС.

Заходим с помощью на роутер Микротик, на котором мы будем поднимать OpenVPN сервер. Копируем 3 вышеуказанных файла из папки, где они лежат, и вставляем с помощью меню: Files — Paste.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Далее импортируем их. Для этого используем меню WinBox: System — Certificates — выбор сертификата — кнопка Import.

После этого в окне Certificate List добавятся две записи: публичного сертификата CA и сертификата OpenVPN сервера. В первом столбце записи сертификата сервера должны стоять две буквы — KR. Если вы видите там что-то другое, попробуйте еще раз импортировать файл ключа (*.key).

IPsec client-to-site (удаленное подключение с мобильных устройств)

Создаем PPP-профиль. Для этого идем: PPP — Profiles. Добавляем его кнопкой +.

В поля вписываем:

  • имя профиля,
  • Local Address — адрес роутера Микротик, к которому будут подключаться клиенты. Он должен лежать в одой подсети с Remote Address

Остальные настройки не трогаем.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Настраиваем сервер OpenVPN на роутере MikroTik.

Идем в меню PPP- Interface — OVPN Server.

  • Активируем его, поставив галочку в пункте Enabled.
  • В поле mode оставляем IP (IP-туннелирование по умолчанию) или выставляем ethernet (режим сетевого моста), это L3 и L2 соответственно. Чаще всего используется IP.
  • Default Profile — выбираем профиль, который мы создали ранее.
  • Certificate — сертификат сервера.
  • require-client-certificate — если ставим галку, то сервер при подключении проверяет сертификат клиента. Если нет — то не проверяет, и настройка клиента при этом упрощается.
Читайте также:  Пошаговое руководство по переносу настроек Zabbix для оптимальной производительности

IPsec client-to-site (удаленное подключение с мобильных устройств)

Создаем и настраиваем пользователя.

PPP — Secrets и добавляем пользователя. Тут все просто: имя, пароль, сервис и профиль.

Необходимо также в настройках клиента предусмотреть синхронизацию времени с сервером. Вначале убеждаемся, что у нас выставлена правильная тайм-зона (меню System — Clock). Далее идем в меню System — SNTP Client и прописываем адрес NTP сервера (на скриншоте указан локальный, но можно взять любой, к примеру 85.21.78.91).

IPsec client-to-site (удаленное подключение с мобильных устройств)

Настраиваем разрешающее правило фаерволла

Идем IP — Firewall — Filter Rules и разрешаем трафик на порт OpenVPN:

  • В поле Chain ставим input.
  • In. Interface — прописываем название интерфейса, на который идет входящий трафик.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Активируем правило на вкладке Action:

IPsec client-to-site (удаленное подключение с мобильных устройств)

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

Шаг 7. Настраиваем клиента Windows

VPN-сервер настроен! Самое время настроить клиента. Делать это мы будем из операционной системы Windows 7, хотя настройки в общем-то типовые. Дополнительный софт ставить не надо.

Открываем «Центр управления сетями и общим доступом» через «Панель управления» и нажимаем кнопку «Настройка нового подключения или сети»:

IPsec client-to-site (удаленное подключение с мобильных устройств)

Тут нужно найти пункт, содержащий в сете три волшебные буквы «VPN», а именно: «Подключение к рабочему месту».

IPsec client-to-site (удаленное подключение с мобильных устройств)

Предлагаются два варианта. Нам подходит первый — подключение через уже имеющееся Интернет-соединение. Условно говоря, поверх уже существующего канала создаётся шифрованный, прямиком «на работу».

IPsec client-to-site (удаленное подключение с мобильных устройств)

IPsec client-to-site (удаленное подключение с мобильных устройств)

И вот здесь пригодится имя пользователя и пароль, которые мы создавали на этапе «секреты».

IPsec client-to-site (удаленное подключение с мобильных устройств)

Если попытаться подключиться сейчас, то ничего хорошего не выйдет! Всё правильно, открываем свойства созданного VPN-подключения и идём на вкладку «Безопасность».

Выбираем тип VPN: L2TP IPsec, а также нажимаем на кнопку «Дополнительные параметры» и вводим предварительный ключ (ipsec)

IPsec client-to-site (удаленное подключение с мобильных устройств)

И вот теперь уже подключение происходит сразу. Откроем окно состояния и видим, что криптозащита трафика включена, можно работать дальше.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Данную статью можно закончить! Оставайтесь с нами, рассмотрим и другие варианты подключений!

Проверка

Для того, что бы проверить VPN-соединение достаточно запустить ping с компьютера VPN-клиента на любой компьютер в сети за маршрутизатором GW1.

  • Не мешает ли файервол. Для уверенности лучше временно отключить все правила файервола на маршрутизаторе.
  • Совпадают ли имя пользователя, пароль и ключ IPsec.
  • На VPN-клиенте указан правильный адрес VPN-сервера к которому должно происходить подключение.

В головном офисе установлен маршрутизатор GW1. Он же будет настроен в качестве VPN-сервера. В этом же офисе работает сервер DC1, который является контроллером домена и параллельно выполняет функции DNS и WINS-сервера. К головному офису будет подключаться компьютер, который будет настроен как VPN-клиент.

Подключаем клиента windows.

Создаем новое подключение к VPN.

Имя/адрес сервера: указываем FQDN, своё, на которое выдан сертификат (у меня это gw1.mt-courses.ru)

IPsec client-to-site (удаленное подключение с мобильных устройств)

Параметры создаваемого подключения

Если всё сделано правильно, то должно произойти успешное подключение в VPN.

Если же возникает ошибка IKE с кодом 13801 то, скорее всего, неправильно или не туда в системе установлен сертификат R3.

Скрипт для IPsec-клиентов с динамическим IP-адресом

Ставим скрипт на выполнение раз в две минуты

/system scheduler
add disabled=no interval=2m name=check-wan-for-ipsec on-event=ipsec-wan-addr policy=read,write

Шаг 2. Профиль для VPN-подключения

Следующим шагом создадим настройки профиля подключений по .

Перейдём на вкладку Profiles и добавим новый профиль.
Зададим имя для удобства. Не мудрствуя лукаво, я просто оставил 2. А также указал локальный и удалённый
адреса из нашего пула (по счастливой случайности он так же называется 2).

IPsec client-to-site (удаленное подключение с мобильных устройств)

Я также отметил возможность изменять максимальный размер сегмента
(опция ). Есть подозрение, что
это поможет избежать фрагментацию сегментов.

Шаг 3. Секреты

Под секретом в данном случае понимаются учётки -юзеров. Заходим также в
раздел , на вкладку и
под каждого пользователя создаём свой секрет.

IPsec client-to-site (удаленное подключение с мобильных устройств)

В качестве сервиса выбираем 2, а в качестве профиля – созданный на шаге № 2 профиль .

Создал одну учётку пока, для эксперимента. Если уж с ней
получится, то и с другими по аналогии должно пойти на УРА.

Настройка подключения на стороне клиента

На компьютере или ноутбуке сотрудника настроим VPN-соединение до L2TP Сервера. Приведу пример, как это можно сделать на ОС Windows 10.

Следующим шагом выберем вариант подключения:

Выполним подключение через Интернет с помощью VPN:

Следующим шагом введем внешний адрес (WAN) роутера Mikrotik и произвольное имя для соединения:

В нашем примере маршрутизатору Mikrotik назначен внешний IP 111.111.111.111, у вас это будет свой адрес.

Продолжим настройку VPN соединения:

Откроем свойства созданного соединения:

Перейдем на вкладку “Безопасность”, выполнив настройку как показано на рисунке ниже:

Откроем дополнительные параметры (5 шаг на рисунке) и укажем ключ IPSec, который мы указали ранее в настройках L2TP Server, параметром IPsec Secret:

Далее откроем вкладку “Сеть”, уберем галочку с протокола TCP/IPv6 и откроем свойства протокола TCP/IPv4:

Нажмем кнопку “Дополнительно” и запретим использовать основной шлюз в удаленной сети, сняв галочку с соответствующего пункта:

Важно! Игнорируя текущий пункт настройки, после установки VPN соединение пропадет интернет.

Подключаем созданное VPN-соединение:

Настройка маршрутизации L2TP-клиента

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

Откроем командную строку с правами администратора и выполним команду:

route add 192.168.13.0 mask 255.255.255.0 10.10.10.1 if 49 /p

  • 192.168.13.0 – локальная подсеть организации;
  • 255.255.255.0 – маска этой подсети;
  • 10.10.10.1 – шлюз (адрес устройства Mikrotik, который мы задавали в настройках профиля);
  • 49 – номер созданного VPN интерфейса (можно узнать командой route print);
  • /p – параметр, указывающий на то, что сделать маршрут постоянным. Иначе после перезагрузки данный маршрут удалится.

Пример, как можно посмотреть номер интерфейса:

На этом настройка L2TP Server + IPSec на Mikrotik закончена. Надеюсь, данная статья была для вас полезной.

Шаг 6. Файрволл

На сетевом экране IP — Firewall необходимо открыть следующие порты (цепочка input — входящий): протокол udp, порты 500, 4500, 1701.

IPsec client-to-site (удаленное подключение с мобильных устройств)

Можно уточнить правила, указав In. Interface, чтобы ожидать пакеты именно с внешнего интерфейса, а также указать конкретные Src. или Dst. адреса, но это уже будет зависеть от конкретной ситуации. Чем точнее описано правило, тем оно более «секурно», но одновременно и менее гибкое.

Соответственно, если политика по умолчанию у вас accept — то делать ничего не надо. Если drop — скорректировать правила соответствующим образом. Настройка файрволла — тема очень интересная, заслуживает отдельной статьи.

Шаг 1. Диапазон адресов клиентов

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

IPsec client-to-site (удаленное подключение с мобильных устройств)

Добавляем новый пул, назвав его как-нибудь примечательно,
чтобы потом не затупить.

Настройка L2TP Server + IPSec на Mikrotik (client-to-site)

Рассмотрим вариант подключения к L2TP Server удаленных сотрудников (client-to-site). На практике данный способ применяется, когда работник компании уехал в командировку и ему надо иметь доступ к внутренним ресурсам локальной сети фирмы. Таким образом, сотрудник со своего ноутбука устанавливает VPN соединение по которому получает доступ к локальным ресурсам сети.

Создаем пул адресов

Первым шагом назначим пул адресов, которые побудут получать клиенты, подключаемые по VPN:

В окне “New IP Pool” укажем название пула и диапазон адресов:

Профиль подключения

Дальше создадим свой профиль для L2TP соединений:

Выполним настройку профиля следующим образом:

  • Name – произвольное имя профиля;
  • Local Address – назначим адрес L2TP Серверу;
  • Pool-адресов, из которого будут назначаться IP подключаемым пользователям (Remote Address);
  • Change TCP MSS: yes –изменять максимально возможный размер сегмента TCP. Текущая настройка немного повысит устойчивость соединения.
  • Use UpnP: no – отключим использование службы UPnP.
  • Use MPLS: no – отключим многопротокольную коммутацию по меткам;
  • Требовать шифрование.

На вкладке “Limits” ограничим подключение единственным соединением:

Создание пользователя

На вкладке “Secrets” укажем настройки имени пользователя, пароль и профиль для подключения:

  • Name – произвольное имя пользователя. Желательно создавать интуитивно понятные имена;
  • Password – пароль пользователя. Желательно использовать сложные пароли;
  • Profiles – ранее созданный профиль для подключения.

Осталось активировать L2TP Server на Mikrotik, выбрать метод аутентификации, задать профиль по умолчанию, включить IPSec и установить для него ключ шифрования:

  • Поставим галочку у пункта “Enabled”;
  • Default Profile – укажем ранее созданный профиль, который будет использоваться по умолчанию для подключений.
  • Оставим метод аутентификации mschap2;
  • Use IPsec: yes – включаем использование IPSec;
  • IPsec Secret – придумаем и установим ключ шифрования для IPSec.
  • OK.

Заключение

Мы рассмотрели настройку VPN-серверов на четырех разных протоколах. Надеемся, что эта инструкция поможет вам создать собственный виртуальный маршрутизатор на базе Mikrotik CHR.

Оцените статью
Хостинги