Вопрос или проблема
Я довольно новичок в AWS и пытаюсь понять, как сделать рабочий VPN «сайт-сайт», чтобы подключить экземпляр EC2 к нашей локальной базе данных. Я следовал руководству на https://docs.aws.amazon.com/vpn/latest/s2svpn/SetUpVPNConnections.html, и все, кажется, работает, AWS не сообщает о проблемах, но я не могу пинговать свою локальную машину. Я включил логирование на VPN, но не вижу ничего, что было бы мне полезно, по крайней мере.
Вот часть последних сообщений из лога, лог в настоящее время просто повторяет этот же тип сообщений снова и снова, я не уверен, нормально ли это или нет.
1736291190000,"{""event_timestamp"":1736291190,""details"":""отправка пакета: от 13.58.56.215 [UDP 4500] к cgw-074c4a28f9f5bf14e [UDP 4500] (76 байт)"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291191000,"{""event_timestamp"":1736291191,""details"":""получение пакета: от cgw-074c4a28f9f5bf14e [UDP 4500] к 13.58.56.215 [UDP 4500] (364 байт)"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291191000,"{""event_timestamp"":1736291191,""details"":""туннель AWS обработал запрос (id=7615) для CREATE_CHILD_SA"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291191000,"{""event_timestamp"":1736291191,""details"":""туннель AWS выбрал предложения для фазы 2 SA"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291191000,"{""event_timestamp"":1736291191,""details"":""туннель AWS фаза 2 SA установлен с входящим SPI: 0xc0d00e23: исходящий SPI: 0xbf40ce55: селекторы трафика: (AWS-сторона) 10.1.10.0/24 <=> (CGW-сторона) 172.31.0.0/16"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291192000,"{""event_timestamp"":1736291192,""details"":""туннель AWS отправляет ответ (id=7615) для CREATE_CHILD_SA"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291192000,"{""event_timestamp"":1736291192,""details"":""отправка пакета: от 13.58.56.215 [UDP 4500] к cgw-074c4a28f9f5bf14e [UDP 4500] (348 байт)"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291192000,"{""event_timestamp"":1736291192,""details"":""получение пакета: от cgw-074c4a28f9f5bf14e [UDP 4500] к 13.58.56.215 [UDP 4500] (76 байт)"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291192000,"{""event_timestamp"":1736291192,""details"":""туннель AWS обрабатывает информационный (DPD) запрос #7616"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291192000,"{""event_timestamp"":1736291192,""details"":""туннель AWS получил DELETE для фазы 2 SA с SPI: 0xbf40ce4d"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291192000,"{""event_timestamp"":1736291192,""details"":""туннель AWS закрывает CHILD_SA с входящим SPI: 0xc6daa543: исходящий SPI: 0xbf40ce4d: селекторы трафика: (AWS-сторона) 10.1.10.0/24 <=> (CGW-сторона) 172.31.0.0/16"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291192000,"{""event_timestamp"":1736291192,""details"":""туннель AWS отправляет DELETE для фазы 2 SA с SPI: 0xc6daa543"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291192000,"{""event_timestamp"":1736291192,""details"":""туннель AWS фаза 2 CHILD_SA закрыта"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291192000,"{""event_timestamp"":1736291192,""details"":""туннель AWS генерирует информационный DPD ответ #7616 для CGW"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291192000,"{""event_timestamp"":1736291192,""details"":""отправка пакета: от 13.58.56.215 [UDP 4500] к cgw-074c4a28f9f5bf14e [UDP 4500] (76 байт)"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""получение пакета: от cgw-074c4a28f9f5bf14e [UDP 4500] к 13.58.56.215 [UDP 4500] (364 байт)"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""туннель AWS обработал запрос (id=7617) для CREATE_CHILD_SA"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""туннель AWS выбрал предложения для фазы 2 SA"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""туннель AWS фаза 2 SA установлен с входящим SPI: 0xce576729: исходящий SPI: 0xbf40ce57: селекторы трафика: (AWS-сторона) 10.1.10.0/24 <=> (CGW-сторона) 172.31.0.0/16"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""туннель AWS отправляет ответ (id=7617) для CREATE_CHILD_SA"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""отправка пакета: от 13.58.56.215 [UDP 4500] к cgw-074c4a28f9f5bf14e [UDP 4500] (348 байт)"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""получение пакета: от cgw-074c4a28f9f5bf14e [UDP 4500] к 13.58.56.215 [UDP 4500] (76 байт)"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""туннель AWS обрабатывает информационный (DPD) запрос #7618"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""туннель AWS получил DELETE для фазы 2 SA с SPI: 0xbf40ce4f"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""туннель AWS закрывает CHILD_SA с входящим SPI: 0xc851365c: исходящий SPI: 0xbf40ce4f: селекторы трафика: (AWS-сторона) 10.1.10.0/24 <=> (CGW-сторона) 172.31.0.0/16"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""туннель AWS отправляет DELETE для фазы 2 SA с SPI: 0xc851365c"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""туннель AWS фаза 2 CHILD_SA закрыта"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""туннель AWS генерирует информационный DPD ответ #7618 для CGW"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291194000,"{""event_timestamp"":1736291194,""details"":""отправка пакета: от 13.58.56.215 [UDP 4500] к cgw-074c4a28f9f5bf14e [UDP 4500] (76 байт)"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291196000,"{""event_timestamp"":1736291196,""details"":""получение пакета: от cgw-074c4a28f9f5bf14e [UDP 4500] к 13.58.56.215 [UDP 4500] (364 байт)"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291196000,"{""event_timestamp"":1736291196,""details"":""туннель AWS обработал запрос (id=7619) для CREATE_CHILD_SA"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291196000,"{""event_timestamp"":1736291196,""details"":""туннель AWS выбрал предложения для фазы 2 SA"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
1736291196000,"{""event_timestamp"":1736291196,""details"":""туннель AWS фаза 2 SA установлен с входящим SPI: 0xcd86b8c2: исходящий SPI: 0xbf40ce59: селекторы трафика: (AWS-сторона) 10.1.10.0/24 <=> (CGW-сторона) 172.31.0.0/16"",""dpd_enabled"":true,""nat_t_detected"":true,""ike_phase1_state"":""установлен"",""ike_phase2_state"":""установлен""}"
Мы заключили контракт с IT-группой, которая настроила нашу сторону с помощью системы FortiNet, но они не знакомы с AWS и не уверены, в чем проблема. Я прочитал много вопросов в интернете, но не нашел ничего похожего на нашу проблему, любая помощь, которую вы можете оказать, чтобы указать мне правильное направление, будет замечательной.
Ответ или решение
Настройка VPN Site-to-Site AWS — это мощное решение для подключения облачных ресурсов к локальной инфраструктуре. Однако, как и с любыми технологиями, могут возникать проблемы даже при правильной конфигурации. Рассмотрим возможные причины и шаги для диагностики и устранения проблемы, когда VPN соединение кажется рабочим, но нет возможности выполнить ping между EC2 экземпляром и локальной машиной.
Фундаментальное понимание
-
Конфигурация сети: Убедитесь, что таблицы маршрутизации и правила брандмауэра настроены правильно как на стороне AWS, так и на локальной системе. Необходимо убедиться, что пакеты корректно маршрутизируются через туннель VPN и что нет блокировки пинга из-за настроек безопасности.
-
Протокол ICMP: Пинг использует протокол ICMP, который может быть заблокирован или фильтрован в целях безопасности. Проверьте, что этот протокол разрешен как в AWS Security Groups и Network ACLs, так и на вашем локальном брандмауэре.
-
Логи и диагностика: Логи показывают, что как Phase 1, так и Phase 2 установлены и работают в штатном режиме. Однако наличие сообщений об удалении Phase 2 SA может указывать на нестабильность в конфигурации или неверные настройки Policy-based VPN.
Детальный анализ возможных причин
Проблемы с маршрутизацией
- Таблицы маршрутизации на стороне AWS: Убедитесь, что таблицы маршрутизации VPC направляют трафик к вашему локальному участку через шлюз виртуальной частной сети (VGW) или частный виртуальный шлюз (PVGw).
- Таблицы маршрутизации на локальной стороне: Убедитесь, что трафик, предназначенный для AWS, направляется через правильный интерфейс VPN.
Проблемы с правилами безопасности
- Security Groups и Network ACLs на стороне AWS должны разрешать входящий и исходящий трафик ICMP из и в соответствующие CIDR диапазоны.
- Брандмауэру на локальной стороне: Убедитесь, что ICMP пакеты разрешены для движущегося трафика между AWS и локальной сетью.
Проблемы с настройкой VPN
- Проверка конфигурации туннеля: Убедитесь, что параметры шифрования и аутентификации совпадают на обеих сторонах туннеля. Разные устройства могут использовать разные наборы параметров по умолчанию.
- DPD и Keep-Alive: Эти параметры могут помочь поддерживать туннель активным, но если они настроены неправильно, это может вызывать разрывы соединения.
Логи и мониторинг
- Анализ логов: Частые обмены CREATE_CHILD_SA могут свидетельствовать о проблемах с перенесением настроек фаз 2, попробуйте проверить стабильность конфигурации Phase 2 SAs.
- CloudWatch Logs и Metrics: Используйте AWS CloudWatch для мониторинга состояния вашего туннеля VPN на предмет изменений в соединении или необычного поведения.
Пошаговое руководство по устранению неисправностей
- Проверка таблиц маршрутизации и ACLs: Обеспечьте корректные маршруты и полную проверяемость ACL.
- Анализ правил безопасности на каждой стороне: Оцените все точки проводимости пинга от EC2 до локальной машины и обратно.
- Проверка параметров VPN: Убедитесь, что все настройки идентичны на AWS и на FortiNet устройстве.
- Проверка с альтернативным трафиком: Попробуйте использовать другие протоколы для диагностики канала.
Подведение итогов и рекомендации
Отказ в пинге при работающем VPN может быть следствием внимания к деталям настройки и управления политиками безопасности. Устраните проблемы с маршрутизацией и обеспечением их безопасности, и если проблема сохранится, обратитесь к документации производителя оборудования и AWS для детальной поддержки. Ваши дополнительные шаги могут включать привлечение экспертов, обладающих опытом работы как с AWS, так и с сетевыми устройствами FortiNet.