Странная проблема для связи IPSec в Windows - PullRequest
0 голосов
/ 11 мая 2019

Для безопасной связи между ПК с Windows и ПК с Linux с IPSec, следуя примеру кода на веб-сайте Windows, https://docs.microsoft.com/en-us/windows/desktop/fwp/manual-sa-keying, Я создаю приложение Windows для добавления SA на ПК с Windows.Я могу подтвердить те SA, которые я хочу добавить из брандмауэра Защитника Windows с помощью функции «Дополнительная безопасность» -> «Мониторинг» -> «Ассоциации безопасности» -> «Быстрый режим».

Когда я пытаюсь выполнить команду ping с ПК с Windows на ПК с Linux, я могу подтвердить этизапрашивать ESP-пакеты, отправленные Windows PC, и эти ESP-пакеты, отправленные Linux-компьютером с Wireshark, я также могу подтвердить, что эти ответные пакеты имеют тот же SPI, который я зарегистрировал во входящем SA, но команда ping показывает только тайм-аут, кажется, что ESP отвечаетпакеты были заблокированы.

Я также попытался добавить правила безопасности подключения к брандмауэру с помощью тех же методов аутентификации, которые я использовал в SA, и добавить входящие правила и исходящие правила, чтобы разрешить пакеты ICMP для команды ping.но команда ping покажет только тайм-аут.

Не могли бы вы рассказать мне что-нибудь, что я пропустил для этой реализации IPsec, или как я могу найти, кто заблокировал эти ответные пакеты ESP?

Еще один вопрос, который я заметилчто в примере кода IPsecSaContextGetSpi () использовался для получения системного SPI.Можно ли использовать указанный пользователем SPI в Windows?

...