IPsec Error: NO_PROPOSAL_CHOSEN в IKE Phase 2 (IPsec SA Proposal)
Архитектура согласования IPsec Child SA (Phase 2) и отказ NO_PROPOSAL_CHOSEN
После успешной взаимной аутентификации узлов в IKE Phase 1 начинается этап создания IPsec SA (Security Association для протокола ESP / AH). В рамках этого обмена стороны согласовывают протокол инкапсуляции (обычно ESP), алгоритм симметричного шифрования данных, алгоритм проверки целостности и опцию совершенной прямой секретности (Perfect Forward Secrecy, PFS). Если ответчик не находит среди предложенных наборов (Proposal) точного совпадения со своим локальным профилем IPsec Proposal / Transform Set, процесс прерывается с генерацией нотификации IKE_NOTIFY: NO_PROPOSAL_CHOSEN во второй фазе.
Бизнес-риски
Полная невозможность передачи пользовательских данных через VPN-туннель при формально установленном соединении первой фазы; периодические обрывы туннеля в момент планового пересогласования ключей (Rekeying).
Матрица параметров IPsec Phase 2 Proposal
| Параметр | Шлюз А | Шлюз Б | Причина конфликта |
|---|---|---|---|
| Протокол инкапсуляции | ESP | ESP | Совпадает (OK) |
| Алгоритм шифрования | AES-256-GCM | AES-256-CBC | Несовпадение режима шифра |
| Аутентификация (Auth) | None (для GCM) | HMAC-SHA-256 | Несовпадение целостности |
| PFS Group | PFS: None | PFS: DH-Group 14 | Конфликт генерации PFS-ключа |
Регламент устранения ошибки NO_PROPOSAL_CHOSEN в Phase 2
Сценарий 1: Синхронизация IPsec Proposal на шлюзе MikroTik
Создайте стандартизированный профиль Phase 2, совместимый с современным оборудованием:
# Настройка унифицированного Proposal (MikroTik RouterOS v7)
/ip ipsec proposal set [find default=yes] disabled=yes
/ip ipsec proposal add name="PROPOSAL_STRONG" auth-algorithms=sha256 \
enc-algorithms=aes-256-cbc lifetime=8h pfs-group=modp2048
# Привязка созданного Proposal к политике
/ip ipsec policy set [find peer="PEER_SITE_B"] proposal="PROPOSAL_STRONG"Сценарий 2: Синхронизация Transform Set на Cisco IOS-XE
! Конфигурация идентичного Transform Set на маршрутизаторе Cisco
crypto ipsec transform-set TS-AES256-SHA256 esp-aes 256 esp-sha256-hmac
mode tunnel
!
crypto map CMAP-VPN 10 ipsec-isakmp
set transform-set TS-AES256-SHA256
set pfs group14
set security-association lifetime seconds 28800Сценарий 3: Устранение конфликта с алгоритмами AEAD (AES-GCM)
При использовании скоростного аппаратного шифрования AES-GCM (128 или 256 бит):
- В настройках
IPsec Proposalустановите алгоритм шифрованияaes-256-gcm. - Параметр Auth Algorithms / Integrity установите в
None (или clear), так как проверка целостности аппаратно встроена в режим GCM.
Типовые ошибки администраторов
- Включение Perfect Forward Secrecy (PFS) только на одной стороне: Если инициатор шлет запрос без блока DH, а ответчик требует PFS (например, Group 14), соединение фазы 2 немедленно сбрасывается.
- Использование устаревшего протокола AH (Authentication Header): AH не поддерживает прохождение через NAT (NAT-T) и блокируется большинством современных межсетевых экранов.
Специалисты ITSTM настроят аппаратное ускорение AES-NI на маршрутизаторах, оптимизируют MTU/MSS и обеспечат максимальную пропускную способность VPN-каналов.
Частые вопросы (FAQ)
Что такое Perfect Forward Secrecy (PFS) и зачем он нужен?
PFS выполняет новый обмен Диффи-Хеллмана при каждой смене ключей фазы 2. Это гарантирует, что даже в случае компрометации долгосрочного мастер-ключа злоумышленник не сможет расшифровать ранее записанный трафик.
Почему AES-GCM работает в разы быстрее AES-CBC?
AES-GCM выполняет шифрование и расчет имитовставки за один проход на аппаратном уровне инструкций процессора (AES-NI / ARM Crypto), существенно снижая нагрузку на CPU.
Какое время жизни (Lifetime) рекомендуется для Phase 2?
Отраслевым стандартом считается время жизни от 1 до 8 часов (3600–28800 секунд) либо лимит объема трафика 4608000 Кб (4 Гб).
Как увидеть отправленные и принятые предложения Phase 2 в Linux?
Используйте команду strongSwan: swanctl --list-conns или ip xfrm state / ip xfrm policy для просмотра активных SA в ядре Linux.