klink0v (klink0v) wrote,
klink0v
klink0v

Category:

Подключение к FortiGate посредством StrongSWAN

Продолжаю тихо ненавидеть FortiNet.

На работе специалист по информационной безопасности организовал для своих сотрудников доступ к локальной сети через VPN при помощи одной из железок производства FortiNet. Для виндовых пользователей предусмотрен "родной" проприетарный клиент и инструкция к нему. А вот Linux-оидам традиционно сказали "***тесь как хотите". Ну что ж... "Фигли нам, кабанам", — сказали линуксоиды.

Под Linux "родной" клиент поставляется в виде готового бинарника и собран с какими-то дюже тухлыми библиотеками LibC. Так, под Debian 9 он ещё работает, а вот в Debian 10 уже падает по Segmentation Fault. Есть проект OpenFortiVPN, но он умеет только режим SSL. А в моём случае по условию задачи требуется IPSec+IKEv1+XAuth. Так что нужен StrongSWAN. Методом тыка и анализом дампов были подобраны параметры соединения, поскольку к железке на другой стороне у меня доступа нет. Ситуация осложняется тем, что когда ему (Fortinet-у) невкусен какой-нибудь ISAKMP-пакет, он на него просто не отвечает. Отмалчивается яки партизан, и всё. И вот сидишь-гадаешь, что же именно ему не понравилось.

Итак. Порядок действий.

1. Установить StrongSwan, если ещё не.
2. Установить плагин "unity", реализующий расширение Cisco Unity. Для Debian-а это пакет "libcharon-extra-plugins".
3. Включить плагин "unity". В Debian-е конфиг лежит в файле "/etc/strongswan.d/charon/unity.conf". В вашем дистрибутиве может быть в другом месте, поиск по строчке "unity".
4. В "/etc/ipsec.conf" пишем

Вместо "mycompany" подставить любое удобное название, вместо "vpn.mycompany.com" — доменное имя или IP-адрес VPN-сервера (FortiGate-а). Вместо "mylogin" — ваш логин.

5. Дальше в файлике ipsec.secrets добавляем:

Вместо "mylogin", "mypassword", "212.13.11.22" и "preshared_key" подставляем акутальные учётные данные: логин, пароль, IP-адрес сервера (FortiGate) и секретный ключ-пароль соответственно.

6. Дальше только остаётся "ipsec start" и "ipsec up mycompany".
7. Отладка традиционно ведется при помощи "ip xfrm state", "ip xfrm policy" и "traceroute" до внутренних хостов.
8. По желанию поднять и настроить DNSMasq для ресолва внутренних имён с "расово верных" внутренних DNS-серверов.

Tags: it, сети
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments