Strongswan IKEv2 vpn на клиенте Windows 10 «ошибка соответствия политики»

На моем сервере ubuntu установлена ​​новейшая версия Strongswan vpn. Я выполнил это руководство и заставил его работать на моем Android и Iphone.

Теперь Я хочу, чтобы он работал на моем ноутбуке с Windows 10, но когда я пытаюсь подключиться через настройки vpn в Windows, я получаю только «ошибку соответствия политики», а в окне просмотра событий отображается код ошибки «13868».

После долгих поисков в Google я все еще не могу найти рабочего решения.

Что мне делать?


проблема, скорее всего, в том, что клиент Windows предлагает слабую группу Диффи-Хеллмана (DH) (1024-битный MODP). Эта группа больше не используется strongSwan, если пользователь не настроит ее явно.

У вас есть два варианта:

  1. Настроить Windows на использование более сильного DH группа. Это можно сделать либо
    • с помощью командлета PowerShell Set-VpnConnectionIPsecConfiguration, который позволяет включить более сильные группы DH (например, группу 14/2048-битного MODP или 384-битного ECP) ​​и даже другие алгоритмы (например, AES -GCM шифрование/целостность в комбинированном режиме, который более эффективен, но также должен быть включен явно на сервере)
    • или через реестр, добавив ключ DWORD HKEY_LOCAL_MACHINE System CurrentControlSet Services Rasman Parameters NegotiateDH2048_AES256 . Установите для него значение 1 , чтобы включить (другие алгоритмы все еще предлагаются), или 2 , чтобы принудительно использовать 256-битный AES-CBC и 2048-битный MODP DH (будут предложены только они).
  2. Добавить предложенную слабую группу DH (1024-битный MODP) в предложение IKE на сервере (например, настроить что-то вроде ike = aes256-aes128-sha256-sha1-modp3072-modp2048-modp1024 , который добавляет его в конце, чтобы другие клиенты могли использовать более сильные группы DH).

Вариант 1 определенно предпочтительнее.


Чтобы выяснить, в чем проблема, вам следует , в качестве первого шага включите ведение журнала и посмотрите, что происходит в процессе подключения. Вот пример конфигурации, которую я использую на своем сервере.

/etc/strongswan.d/charon-logging.conf

   charon {# Раздел для определения регистраторов файлов, см. КОНФИГУРАЦИЯ ЛОГГЕРА в # strongswan.conf (5).  filelog {#  - это полный путь к файлу журнала. /var/log/strongswan.log {# Уровень логирования для определенной подсистемы.  #  =  # Если эта опция включена, записи журнала добавляются к # существующему файлу.  append = yes # Уровень журнала по умолчанию.  default = 2 # Включение этой опции отключает блочную буферизацию и включает буферизацию строки #.  # flush_line = no # Префикс каждой записи журнала с именем соединения и # уникальным числовым идентификатором для каждого IKE_SA.  ike_name = yes # Добавляет миллисекунды в пределах текущей секунды после # временной метки (разделенных точкой, поэтому time_format должен заканчиваться% S # или% T).  # time_add_ms = no # Добавляйте к каждой записи журнала временную метку.  Параметр принимает строку формата # как переданную в strftime (3). # time_format =}}}  

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


Чтобы выяснить, в чем проблема вам следует в качестве первого шага включить ведение журнала и посмотреть, что происходит в процессе подключения. Вот пример конфигурации, которую я использую на своем сервере.

/etc/strongswan.d/charon-logging.conf

   charon {# Раздел для определения регистраторов файлов, см. КОНФИГУРАЦИЯ ЛОГГЕРА в # strongswan.conf (5).  filelog {#  - это полный путь к файлу журнала. /var/log/strongswan.log {# Уровень логирования для определенной подсистемы.  #  =  # Если эта опция включена, записи журнала добавляются к # существующему файлу.  append = yes # Уровень журнала по умолчанию.  default = 2 # Включение этой опции отключает блочную буферизацию и включает буферизацию строки #.  # flush_line = no # Префикс каждой записи журнала с именем соединения и # уникальным числовым идентификатором для каждого IKE_SA.  ike_name = yes # Добавляет миллисекунды в пределах текущей секунды после # временной метки (разделенных точкой, поэтому time_format должен заканчиваться% S # или% T).  # time_add_ms = no # Добавляйте к каждой записи журнала временную метку.  Параметр принимает строку формата # как переданную в strftime (3).  # time_format =}}}  

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

Оцените статью
techsly.ru
Добавить комментарий