Jump to content

Настройка туннеля IPsec между роутерами Mikrotik RB1100AHx2 и Keenetic Giga III или UltraII


Recommended Posts

Дано (все белые IP вымышлены):

Конфигурация RB1100AHx2

Белый IP-адрес WAN-интерфейса 152.12.12.12

Внутренняя сеть 192.168.10.0/23

 

Конфигурация Keenetic Ultra II

Белый IP-адрес WAN-интерфейса 182.12.12.12

Внутренняя сеть 192.168.80.0/24

 

Обязательное условие - внутренние сети не должны пересекаться!

 

Настройка Mikrotik:

Прежде всего идем в IP -> IPsec -> Groups, если там нет ни одной группы, просто жмем плюсик "Добавить", в открывшемся окне, в поле "Name" пишем "default" и жмем Ok, проще говоря добавляем группу default. Иначе в дальнейшем будут глюки при установлении соединения в фазе 1, дело в том, что темплейт policy по умолчанию должен принадлежать какой-то определенной группе. Иначе в поле "Policy Template Group" первой фазы (в настройке Peer) будет значение unknown, а связь не будет устанавливаться. Похоже на какую-то магию, но OS закрытая, доступа к внутренностям у нас нет, что там происходит сказать нельзя, так что просто добавляем группу, если ее нет, и идем дальше.

Добавляем Policy, для чего идем в IP -> IPsec -> Policies, жмем плюсик "Добавить"

Clipboard01.png.dd38f239fb081dc10a5591562486610c.png

Policy - это правило, что именно нужно делать при пересылке данных между подсетями, которые мы указываем на вкладке General. Source Address - локальная сеть, обслуживаемая роутером Mikrotik RB1100AHx2. Destination Address - локальная сеть, которую обслуживает Zyxel Keenetic Ultra II. Галочку "Template" не ставим, она превращает Policy в темплейт, а нам нужна именно Policy.

Clipboard02.png.99f5e1eed671535ab4939d6b0e3d5da1.png

На вкладке Action мы указываем действие, которое должно происходить, мы хотим шифровать данные в туннеле (галочка Tunnel), туннель устанавливается между WAN-интерфейсами обоих роутеров, на которых прописаны белые адреса, которые участвуют в создании Security Association (SA), SA Src. Address (белый IP RB1100AHx2), SA Dst. Address (белый IP Keenetic Ultra II). Данные шифруются так, как указано в default proposal.

Далее настраиваем первую фазу IPsec - идем в IP -> IPsec -> Peers, жмем плюсик "Добавить"

Clipboard03.thumb.png.0a3482785cda3e7a5723912850547839.png

Тут настроек уже больше. Address - IP-адрес удаленного роутера, вписываем туда белый IP Keenetic II Ultra. Port - обычный порт ISAKMP, менять его не стоит. Local Address можно не указывать. Придумываем PSK, вписываем в поле Secret, где-нибудь его временно сохраняем - он понадобится, когда будем настраивать Keenetic UItra II. Устанавливаем галочку NAT Traversal, чтобы с роутером смогли связаться устройства, расположенные за NAT. Далее выставляем необходимые алгоритмы шифрования. Аппаратно обоими роутерами поддерживаются хеширование SHA1 (недавно был-таки взломан неутомимыми сотрудниками Google, а еще раньше не менее работоспособными китайцами), SHA256 и шифрование AES128-CBC, AES192-CBC, AES256-CBC - можно указать их все, при установлении SA обычно выбирается максимально возможные алгоритмы. Lifetime - время жизни ключа, по окончании действия ключа он будет перегенерирован. DPD или Dead Peer Detection - своеобразный keepalive, проверка удаленного peer, раз в какое-то время (DPD Interval) устройства спрашивают друг друга "ты там как, жив?" (R-U-THERE), ответ должен быть "да, живой я" (R-U-THERE ACK). Если ответа нет, инициатор переспрашивает некоторое количество раз (DPD Maximun Failures), после чего уничтожает IPsec-сессию, и удаляет обе SAs. После этого устройства будут пытаться восстановить связь, если это прописано в настройках. При DPD Interval "disabled" ключ не будет обновляться в первой фазе при достижении конца Lifetime, так что лучше в этом поле выставить некое значение. DH Group это группа Диффи-Хеллмана, соответствия этих modp номерам в Keenetic есть в этой таблице.

Настройка второй фазы IPsec - идем в IP -> IPsec -> Proposals. Там уже есть default proposal, он был указан при создании Policy, так что можно просто подогнать его под себя. Помним об алгоритмах, обрабатываемых аппаратно, имеет смысл выставить именно их, при использовании аппаратного критомодуля загрузка процессоров обоих роутеров стремится к нулю.

Clipboard04.png.cefc23dead7d41df078b1edeeed72e43.png

Здесь тоже есть поле Lifetime, по окончании которого ключ будет перегенерирован. Здесь это происходит всегда, в отличии от первой фазы.

На этом настройку Mikrotik можно считать завершенной. Приступаем к

Настройке Keenetic Ultra II

Заходим в WEB-интефейс роутера, в самом низу его находим кнопку со щитом - раздел "Безопасность". Нажимаем ее, ищем вкладку IPsec VPN.  Если ее там нет (вот неожиданность!) - идем в раздел Система (кнопка с шестеренкой) -> Обновление, жмем кнопку "Показать компоненты", ищем в списке IPsec VPN и ставим рядом с ним галочку, жмем в самом низу кнопку "Установить". Обычно он устанавливается сразу. Если серверы NDMS живы. Иногда надо подождать, но когда-нибудь вы его установите, если будете достаточно терпеливы.

Компонент установился? Роутер перезагрузили? Он делает это не торопясь, основательно, наверное тщательно расставляет каждый бит по ячейкам памяти... Но вот наконец, снова идем в раздел безопасность и находим-таки там вкладку IPsec

Clipboard07.png.7624b3ce0e3b7ad3803718b7da5fe0f0.png

Ставим галочку "Включить", жмем кнопку "Применить". В IPsec-подключениях сначала будет пусто, жмем кнопку "Добавить". Возникнет окно настройки IPsec-подключения

Вписываем имя соединения. Выставляем галочки "Включить" (мы же все еще хотим установить соединение с mikrotik?), Автоподключение, Nail up (для удержания соединения), "Обнаружение неработающего пира (DPD)", задаем необходимый интервал проверки.

В поле "Удаленный шлюз" вписываем белый IP-адрес Mikrotik.

Clipboard061.png.bd4a6e6ab195713af64084a675cc54b9.png

Далее настраиваем фазу 1. Мне лично не удалось заставить работать эти два роутера с протоколом IKE v2, поэтому все настройки приведены для IKE v1. У меня дома белый IP-адрес, грех не сделать его идентификатором локального шлюза. Поскольку мы указали белый IP-адрес Mikrotik, то в поле "Идентификатор удаленного шлюза" можно поставить "Any", или "IP-адрес", так же в моем распоряжении есть три отлично работающих DNS, соответственно все устройства имеют корректные доменные имена, я мог бы использовать в качестве идентификатора и FQDN. Помните, мы при настройке Mikrotik RB1100AHx2 придумывали ключ PSK, так вот, самое время его вписать в поле "Ключ PSK", кстати, оглянитесь, за плечами у вас нет врагов? Ключ прямо так и будет виден.

Хеш, алгоритмы шифрования и группу Диффи-Хеллмана надо выставить точно такие же, как и на Mikrotik, в настройках Peer, иначе роутеры не смогут друг с другом договориться. Режим согласования лучше оставить Main, Aggressive хоть и ускоряет подключение, но менее безопасен, например ключ передается не по шифрованному каналу, а по открытому, в виде хеша, а мы же зачем-то тут настраиваем IPsec… Так мы плавно перешли к настройке фазы 2

Clipboard062.png.f2636d380822ec5961ab9d10c5890c46.png

Режим задаем, конечно, туннель, ведь именно IPsec-туннель мы все это время и настраивали. Алгоритмы шифрования, хеши и группа Диффи-Хеллмана здесь должны соответствовать настройкам Proposal в Mikrotik. Вписываем локальную и удаленную подсети в соответствующие поля. Жмем "Применить".

Если все сделали правильно - пойдет инициализация соединения, в логах Mikrotik не должно быть ошибок, в IP -> IPsec -> Remote Peers должен образоваться Peer:

Clipboard051.png.88ef1cb61f06cd90ebf2ad79a221059f.png

А в IP -> IPsec -> Installed SAs появиться две Security Associations, и должен быть виден обмен данными:

Clipboard05.png.6775050de2d5e2136b8cecc40b577aea.png

На стороне Keenetic весь процесс соединения отображается в логе, а информацию о соединении мы увидим на странице "Системный монитор" и вкладке "IPsec VPN":

Clipboard08.png.ddfeb0c17d1fa966d77e3d8fca811df7.png

Со стороны Keenetic можно попробовать достучаться до какой-либо из удаленных машин.

А вот в обратную сторону ничего не работает. Со стороны mikrotik, даже с самого роутера, ни один хост, даже сам Keenetic, не доступен, буду очень признателен, если кто-нибудь мне скажет почему, и должно ли работать в принципе.

Edited by vadimbn
  • Thanks 1
Link to comment
Share on other sites

  • 2 months later...

Ultra II, прошивка - крайний драфт. Туннель настраивал до Mikrotik hAP (6.39.1). Сегменты сетей не пересекались: 192.168.10.0/23 на кинетике и 192.168.0.0/24. IP на WAN портах белые. В конечном итоге соединение установилось, но держится буквально 30 секунд, после чего разрывается на стороне кинетика. При этом пользователи со стороны кинетика теряли связь с интернетом. Хорошо, если бы была инструкция KB по созданию туннеля по ipsec была не только из мира zyxel, но и охватывала routeros.

Link to comment
Share on other sites

33 минуты назад, Phaeton сказал:

Ultra II, прошивка - крайний драфт. Туннель настраивал до Mikrotik hAP (6.39.1). Сегменты сетей не пересекались: 192.168.10.0/23 на кинетике и 192.168.0.0/24. IP на WAN портах белые. В конечном итоге соединение установилось, но держится буквально 30 секунд, после чего разрывается на стороне кинетика. При этом пользователи со стороны кинетика теряли связь с интернетом. Хорошо, если бы была инструкция KB по созданию туннеля по ipsec была не только из мира zyxel, но и охватывала routeros.

А логи?

Link to comment
Share on other sites

  • 5 years later...

Кто знает как на свежих +- прошивках подружить это чудо?

Микрот конечно задротный в пунктах.... никакой юзабельности и юзер френдли 😁

Link to comment
Share on other sites

  • 2 weeks later...
В 25.08.2022 в 16:43, CBLoner сказал:

Кто знает как на свежих +- прошивках подружить это чудо?

Микрот конечно задротный в пунктах.... никакой юзабельности и юзер френдли 😁

Я пробовал, забил и подружил через wireguard.

Link to comment
Share on other sites

  • 3 weeks later...
  • 11 months later...
В 25.08.2022 в 15:43, CBLoner сказал:

Кто знает как на свежих +- прошивках подружить это чудо?

Микрот конечно задротный в пунктах.... никакой юзабельности и юзер френдли 😁

Очень даже просто) 

Если понимаешь, что делаешь

Link to comment
Share on other sites

Тут опять же вопрос юзер френдли...

Понятно, что было бы круто аля разбирать пакеты иметь представление о всей круговоротИ ;-)

НО, не всегда на это есть время, чтобы на столько погружаться в мат часть, а есть представление как и где должно работать, а с двух сторон это как бы обозвали слегка по разному!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...