Инструкция по настройке IKEv2 между двумя роутерами MikroTik. Будут рассмотрены все этапы настройки IKEv2 как серверной так клиентской части, а также произведен сравнительный тест скорости между IKEv1 и IKEv2.
Присутствие SSL в любой системе повышает не только доверие среди пользователей, но и уровень защищенности таких соединений. SSL доверяют банки, корпорации и это является первым признаком надежности службы. Ранее были рассмотрены такие типы VPN туннелей:
- SSTP с использованием SSL;
- IpSec с использованием ключа;
- OpenVPN с использованием SSL;
- PPTP(не рекомендуется к использованию в корпоративных средах!);
- L2TP+IpSec.
VPN туннели стали первой необходимостью в современной ИТ инфраструктуре, их используют как сотрудники так и целые отделы, обеспечивая удаленный доступ к корпоративным ресурсам. Частым решением выступает OpenVPN: готовый и надежный opensource продукт для удаленного доступа. Отличительной чертой IKEv2 от OpenVPN является то, что IKEv2 больше ориентирован на коммуникацию между аппаратными маршрутизаторами(роутерами), а OpenVPN имеет больше программную ориентацию, т.е. требует наличие ПК, смартфона или сервера.
Чем отличается IKEv2 от IpSec
Стоит сразу отметить что IKEv2 это разновидность IpSec с применением SSL сертификатов. Данная конструкция наследует все положительные качества у протокола IpSec такие как аппаратная поддержка маршрутизаторами(роутерами) и высокий уровень защищенности соединения. К разработке приложили руку такие гиганты как Microsoft и Cisco.
IKE (Internet Key Exchange) как v1 использует pre shared key, а как v2 — SSL сертификат. Обе версии относятся к phase-1, как первый этап, на котором происходит согласование между клиентами, устанавливающими между собой VPN туннель. Большинство ошибок, которые могут встретиться при настройке IpSec как правило происходят именно на phase-1.
В конце статьи приведено тестовое сравнение IKEv2 и IpSec по скоростной характеристики через Bandwidth Test.
Настройка VPN туннеля IKEv2 между двумя MikroTik
Как видно из названия раздела, схема подключения будет состоять из двух маршрутизаторов(роутеров) MikroTik, объединённых между собой VPN туннелем типа IKEv2. Для туннелей подобного типа не принято использовать обозначения типа VPN сервер и VPN клиент, но для того, чтобы зафиксировать иерархию устройств будет определено:
IKEv2 VPN сервер — роутер MikroTik-1. Будет управлять валидностью сертификатов, а также заниматься аутентификацией клиентов по SSL;
IKEv2 VPN клиент — роутер MikroTik-2.
Создание SSL сертификата для VPN сервера IKEv2
Всего будет создано три разных сертификата для:
- Центра сертификации(CA);
- VPN cервера IKEv2;
- VPN клиента IKEv2.
Создание SSL сертификата для CA
Настройка находится System→Certificates
Указать возможность подписи данным сертификатом других сертификатов
Подпись CA сертификата
Создание сертификата SSL для IKEv2 VPN сервера
Указать возможность использовать этот сертификат в качестве серверного
Подпись сертификата для IKEv2 сервера центром сертификации(CA)
Создание сертификата SSL для IKEv2 VPN клиента
Указать возможность использовать этот сертификат в качестве клиентского
Подпись сертификата для IKEv2 клиента центром сертификации(CA)
Экспорт сертификата SSL для VPN клиента
Место хранение SSL сертификата в MikroTik
Настройка находится Files→File List→Download
Настройка VPN IKEv2 туннеля для MikroTik сервера
Настройка части IpSec отличается от типичной конфигурации с открытым ключом только разделом Identities, который будет осуществлять обязательную проверку сертификата со стороны VPN клиента. Этот функционал не только обладает свойствами защиты соединения и трафика, но может служить в качестве инструмента по управлению разрешениями для доступа.
Создание IpSec Profile, phase-1
Настройка находится в IP→IPsec→Profile
Добавление Peer, узел-клиент
Настройка находится в IP→IPsec→Peers
Определение методов авторизации
Настройка находится в IP→IPsec→Identities
- Match By = certificate — проверяет сертификат указанный в Remote Certificate с сертификатом, со стороны VPN клиента.
Создание IpSec Proposal, phase-2
Настройка находится в IP→IPsec→Proposals
Добавление IpSec Policy
Настройка находится в IP→IPsec→Policies
/ip ipsec profile add dh-group=modp1024 enc-algorithm=3des hash-algorithm=md5 lifetime=8h name=\ Profile-Ipsec /ip ipsec peer add address=b9070aee7432.sn.mynetname.net name=b9070aee7432.sn.mynetname.net exchange-mode=ike2 \ profile=Profile-Ipsec /ip ipsec proposal add auth-algorithms=md5 enc-algorithms=3des lifetime=8h name=Proposal-Ipsec /ip ipsec identity add auth-method=digital-signature certificate=92490a0ea575.sn.mynetname.net \ match-by=certificate peer=b9070aee7432.sn.mynetname.net \ remote-certificate=b9070aee7432.sn.mynetname.net /ip ipsec policy add dst-address=192.168.1.0/24 peer=b9070aee7432.sn.mynetname.net proposal=\ Proposal-Ipsec sa-dst-address=82.144.213.152 sa-src-address=0.0.0.0 \ src-address=192.168.0.0/24 tunnel=yes
Настройка VPN IKEv2 туннеля для MikroTik клиента
В этом разделе нужно выполнить 2 задачи:
- импортировать сертификат с VPN сервера;
- настроить IKEv2 VPN клиент.
Загрузка SSL сертификата для VPN IKEv2 клиента
Настройка находится Files→File List→Upload
Импорт SSL сертификата
Создание IpSec Profile, phase-1
Настройка находится в IP→IPsec→Profile
Добавление Peer, узел-сервер
Настройка находится в IP→IPsec→Peers
Определение методов авторизации для VPN клиента
Настройка находится в IP→IPsec→Identities
Создание IpSec Proposal, phase-2
Настройка находится в IP→IPsec→Proposals
Добавление IpSec Policy для VPN клиента
Настройка находится в IP→IPsec→Policies
/ip ipsec profile add dh-group=modp1024 enc-algorithm=3des hash-algorithm=md5 lifetime=8h name=\ Profile-Ipsec /ip ipsec peer add address=92490a0ea575.sn.mynetname.net name=92490a0ea575.sn.mynetname.net exchange-mode=ike2 \ profile=Profile-Ipsec /ip ipsec proposal add auth-algorithms=md5 enc-algorithms=3des lifetime=8h name=Proposal-Ipsec /ip ipsec identity add auth-method=digital-signature certificate=\ cert_export_b9070aee7432.sn.mynetname.net.p12_0 peer=\ 92490a0ea575.sn.mynetname.net /ip ipsec policy add dst-address=192.168.0.0/24 peer=92490a0ea575.sn.mynetname.net proposal=\ Proposal-Ipsec sa-dst-address=195.138.71.119 sa-src-address=0.0.0.0 \ src-address=192.168.1.0/24 tunnel=yes
Тестирование скорости VPN туннелей IKEv2 и IpSec
В качестве тестового стенда были использованы два маршрутизатора(роутера) с аппаратной поддержкой IpSec — MikroTik Hap Ac2.
Время каждого теста 20 сек.
Bandwidth Test IKEv2
Bandwidth Test IpSec
По результатам стоит отметить, что IKEv2 опережает на несколько пунктов IpSec. Это может показаться незначительным, но аналогичные показатели IKEv2 демонстрирует на разных каналах и устройствах. Это может быть весомой причиной при выборе протокола для шифрования VPN трафика.
Проблемы при работе VPN IKEv2
Самые распространённые случаи описаны в статье «Настройка MikroTik IpSec, проблемы при работе →«:
откуда возьмётся ikev2 если в peers-exchange mode стоит main?
Все верно, будет только ikev1. Поправил
Каким образом MikroTik-клиент увидит адрес 192.168.0.1 MikroTik-сервера? Где и как маршрут прописан ко внутреннему адресу?
это описано в IP→IPsec→Policies
ни каких статических маршрутов добавлять не нужно, это стандартный состав настроек для IPSEC