Проверьте, блокирует ли удаленный сервер порт мои соединения IKEv2/IPSec VPN.

Вопрос или проблема

Я использую StrongSwan на Ubuntu, чтобы попытаться установить VPN-соединение «точка-точка» с удаленным сервером IKEv2 IPSec, но, похоже, что мои запросы на соединение не доходят до удаленного сервера.

Есть ли у меня возможность использовать мой сервер, чтобы проверить, блокирует ли брандмауэр удаленного сервера порт, к которому я пытаюсь подключиться?

Попробовал использовать telnet <remote-ip> 500 на VPN-сервере, который работает, но эта команда просто выходит за пределы времени ожидания. У меня нет доступа к удаленным VPN-серверам.

Спасибо!

Логи StrongSwan

инициирование IKE_SA remoteServer[3] к 2.2.2.2
генерация запроса IKE_SA_INIT 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(REDIR_SUP) V ]
отправка пакета: от 10.150.0.33[500] к 2.2.2.2[500] (1256 байт)
повторная передача 1 запроса с идентификатором сообщения 0
отправка пакета: от 10.150.0.33[500] к 2.2.2.2[500] (1256 байт)
повторная передача 2 запроса с идентификатором сообщения 0
отправка пакета: от 10.150.0.33[500] к 2.2.2.2[500] (1256 байт)
повторная передача 3 запроса с идентификатором сообщения 0
отправка пакета: от 10.150.0.33[500] к 2.2.2.2[500] (1256 байт)
повторная передача 4 запроса с идентификатором сообщения 0
отправка пакета: от 10.150.0.33[500] к 2.2.2.2[500] (1256 байт)
повторная передача 5 запроса с идентификатором сообщения 0
отправка пакета: от 10.150.0.33[500] к 2.2.2.2[500] (1256 байт)
сдаюсь после 5 повторных передач
установление IKE_SA не удалось, партнер не отвечает
установление соединения 'remoteServer' не удалось

sudo tcpdump udp port 500 (захвачено на клиенте)

tcpdump: подавлен подробный вывод, используйте -v или -vv для полного декодирования протокола
прослушивание на ens4, тип канала EN10MB (Ethernet), размер захвата 262144 байт
13:14:25.475539 IP my-server.us-east4-c.c.foo-bar-142406.internal.isakmp > 2.2.2.2.isakmp: isakmp: parent_sa ikev2_init[I]
13:14:29.475878 IP my-server.us-east4-c.c.foo-bar-142406.internal.isakmp > 2.2.2.2.isakmp: isakmp: parent_sa ikev2_init[I]
13:14:36.676279 IP my-server.us-east4-c.c.foo-bar-142406.internal.isakmp > 2.2.2.2.isakmp: isakmp: parent_sa ikev2_init[I]
13:14:49.636657 IP my-server.us-east4-c.c.foo-bar-142406.internal.isakmp > 2.2.2.2.isakmp: isakmp: parent_sa ikev2_init[I]
13:15:12.965064 IP my-server.us-east4-c.c.foo-bar-142406.internal.isakmp > 2.2.2.2.isakmp: isakmp: parent_sa ikev2_init[I]
13:15:54.955428 IP my-server.us-east4-c.c.foo-bar-142406.internal.isakmp > 2.2.2.2.isakmp: isakmp: parent_sa ikev2_init[I]

Чтобы быть уверенным, что ваш трафик достигает удаленного VPN-сервера, вам нужно спросить администратора этого сервера.

Но с помощью tcpdump вы можете искать трафик ICMP, который указывает на то, что целевой адрес для вашего трафика недоступен. Вы могли бы проверить это, например, так:

sudo tcpdump -w vpn.pcap 'host 2.2.2.2 or icmp[0] = 3'

Это может поймать больше ICMP-трафика, чем вам нужно.

Наконец, вы можете проверить параметры IKE фазы 1, которые ваш сервер отправляет, проверив vpn.pcap с помощью Wireshark. Первое сообщение IKE всегда незашифровано, и Wireshark имеет неплохие декодеры пакетов для этого.

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

Что касается NAT, IKEv2 может справляться с этим, когда установлены соответствующие параметры.

Ответ или решение

Проверка блокировки порта удаленного сервера для IKEv2/IPSec VPN-соединений

Если вы пытаетесь установить соединение с удаленным IKEv2/IPSec VPN-сервером с использованием StrongSwan на Ubuntu и у вас возникают проблемы с достижением сервера, есть несколько методов, чтобы проверить, не блокирует ли фаервол удаленного сервера ваш трафик.

1. Анализ журнала StrongSwan

Ваши журналы показывают, что все запросы IKE_SA_INIT не получают ответа от удаленного сервера (IP 2.2.2.2). Это может происходить по ряду причин:

  • Порт 500 UDP, используемый для IKE, может быть закрыт или заблокирован фаерволом удаленного сервера.
  • Конфигурация вашего клиента может содержать неправильные параметры, которые не соответствуют требованиям сервера.

2. Использование tcpdump для анализа трафика

Вы уже начали использовать tcpdump, что является правильным шагом для диагностики проблемы. Вы можете запустить команду, чтобы отследить ICMP-трафик, который может указать на неполадки в маршрутизации или на то, что трафик не достигает вашего назначения:

sudo tcpdump -i ens4 -w vpn.pcap 'host 2.2.2.2 or icmp[0] = 3'

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

3. Анализ результатов tcpdump

После того как вы собрали данные, откройте файл vpn.pcap в Wireshark. Это поможет вам увидеть, отправляются ли пакеты на удаленный сервер и какова реакция на них. Убедитесь, что ваши IKE-сообщения содержат корректные параметры. Некоторые VPN-серверы могут игнорировать запросы, если параметры не соответствуют их требованиям, а это может привести к бесконечным попыткам пересылки.

4. Проверка доступности порта с помощью telnet

Вы уже пробовали использовать команду telnet, чтобы проверить доступность порта 500, но команда не удалась. Если telnet <remote-ip> 500 истекает по времени, это также может указывать на то, что либо фаервол удаленного сервера блокирует порт, либо сервер может быть недоступен.

5. Взаимодействие с администратором удаленного сервера

Поскольку у вас нет доступа к удаленному серверу, возможность взаимодействовать с его администратором может оказаться наиболее полезным. Запросите подтверждение о том, открыты ли необходимые порты (500 и, возможно, 4500, если NAT-T используется), и нет ли ограничений на IP-адрес вашего сервера. Администратор может также провести собственную диагностику для подтверждения наличия трафика.

6. Убедитесь в правильной конфигурации вашего клиента

Подтвердите, что в конфигурации StrongSwan указаны все необходимые параметры для IKEv2 и IPSec, включая поддержку NAT, если это необходимо. Проверьте следующие настройки:

  • left и right — корректные адреса и параметры.
  • Поддержка NAT для случаев, когда клиент и сервер находятся за NAT.

Заключение

Проблемы с IKEv2/IPSec VPN-соединениями могут быть вызваны множеством факторов, включая фаерволы, неправильные конфигурации или недоступные серверы. С помощью перечисленных методов вы сможете провести диагностику и выявить возможные причины. Обязательно анализируйте полученные данные и взаимодействуйте с администратором удаленного сервера для решения возникших проблем.

Оцените материал
Добавить комментарий

Капча загружается...