Не буду описывать причины для настройки IKEv2, просто достаточно знания, что протокол хорош и поддержан сегодня во всех основных операционных системах. Ну и RouterOS тоже поддерживает. В справке MikroTik опубликована подробная инструкция по настройке, но результат рабочий не для всех клиентов. На устройствах Apple все работало, а на Windows и Android никак не хотело устанавливаться соединение. Windows-клиент писал «Неприемлемые учётные данные проверки подлинности IKE». Собственно об этом я и хочу рассказать.
Инструкция от MikroTik хорошая, но после ее выполнения есть проблема в цепочке сертификатов. Некоторые решают ее добавлением R3 в список доверенных системы, но это плохой способ. Нам нужно добиться того, чтобы сервер отправлял клиенту всю цепочку сертификации. Если в случае SSTP достаточно просто добавить промежуточный сертификат в систему и он сам подхватится:
/tool/fetch https://letsencrypt.org/certs/lets-encrypt-r3.pem
/certificate/import file-name=lets-encrypt-r3.pem name=lets-encrypt-r3
То чтобы исправить IKEv2 нужно явно указать его:
/ip/ipsec/identity/set [find peer=ike2] certificate=letsencrypt-autogen_2023-05-20T17:06:31Z,lets-encrypt-r3
То есть в поле certificate
нужно указать два сертификата через запятую. После этих изменений работает на всех ОС.