Вопрос или проблема
Я пытаюсь настроить Remote-VPN IPsec ikev1 из встроенного VPN-клиента Windows 10 на Cisco ASA 5505, используя туннель L2TP/IPsec с предварительно заданным ключом и xAuth.
После некоторых трудностей мне удалось завершить как IPsec Phase 1, так и Phase 2. Но я все равно получил эту ошибку на стороне Windows при попытке подключиться:
Удаленное подключение было отклонено, так как введенные вами имя пользователя и пароль
не распознаны, или выбранный
протокол аутентификации не разрешен на сервере удаленного доступа.
На стороне Windows, в разделе “Разрешенные протоколы” у меня отмечены как Chap, так и MS-Chap v2.
На Cisco ASA я разрешил MS-Chap v2 в группе DefaultRAGroup, и отладчик Cisco VPN не показывает мне никаких конкретных ошибок по этому поводу.
Опубликую части моей рабочей конфигурации при необходимости, но у меня есть ощущение, что проблема на стороне Windows.
Кто-нибудь добился успеха в том, что я пытаюсь сделать? Или знает какие-то детали о методах аутентификации встроенного VPN-клиента Windows, которых я не знаю?
РЕДАКТИРОВАНО
Добавлено скриншот некоторых сообщений отладки VPN. Обратите внимание на сообщение “PHASE 2 COMPLETE” синим цветом, а затем клиент отправляет сообщение о завершении. Также обратите внимание на “Security negotiation complete for User(). Там должен быть указан пользователь..
Это часто происходит, когда комбинация AAA-сервера и PPP неверна. Поддерживаются только такие комбинации:
LOCAL : PAP, MSCHAPv1, MSCHAPv2
RADIUS : PAP, CHAP, MSCHAPv1, MSCHAPv2, EAP-Proxy
TACACS+ : PAP, CHAP, MSCHAPv1
LDAP : PAP
NT : PAP
Kerberos : PAP
Смотрите этот источник. Вы должны выбрать это соответствующим образом в профиле подключения (Advanced->PPP).
Если вы используете локальную аутентификацию и MS-CHAP, то вам нужно закодировать ваши хеши паролей с использованием юникода и MD4. Это делается путем добавления ключевого слова msschap (или в некоторых версиях nt-encrypted), например так:
username test password cisco mschap
username test2 password cisco2 nt-encrypted
Затем вы сможете успешно аутентифицироваться.
Ответ или решение
Введение в настройку VPN через Windows 10 с использованием L2TP/IPsec для подключения к Cisco ASA 5505 может оказаться сложной задачей, особенно когда дело касается аутентификации. Ваш случай, судя по описанию, подразумевает использование предшествующего общего ключа (PSK) и расширенной аутентификации (xAuth). Ваша проблема заключается в том, что после успешного завершения фаз IPsec 1 и 2 вы получаете ошибку, связанную с неверным именем пользователя или паролем.
Теория
Протокол L2TP/IPsec обычно используется для безопасного и защищенного подключения через интернет. Он состоит из двух уровней: L2TP (Layer 2 Tunneling Protocol) и IPsec (Internet Protocol Security). Ваша проблема может быть связана с неправильно настроенной аутентификацией, поскольку в случае L2TP/IPsec на этапе аутентификации участвуют как VPN-клиент, так и сервер.
В Windows 10 поддерживаются разные протоколы аутентификации, такие как CHAP (Challenge Handshake Authentication Protocol) и MS-CHAP v2 (Microsoft Challenge Handshake Authentication Protocol, версия 2). Однако, для безопасного соединения по VPN важно синхронизировать протоколы на сервере и клиенте. Вы упомянули, что на сервере Cisco ASA 5505 разрешен MS-CHAP v2. Значит, Windows VPN-клиент также должен быть настроен для использования этого протокола.
Пример
Вы правильно настроили сервер на использование MS-CHAP v2 в группе DefaultRAGroup, но проблема может быть на уровне конфигурации AAA (Authentication, Authorization, and Accounting). Необходимо убедиться, что выбран правильный AAA-сервер, поддерживающий необходимые протоколы. Как уже упоминалось, только определенные комбинации поддерживаются:
- LOCAL: PAP, MSCHAPv1, MSCHAPv2
- RADIUS: PAP, CHAP, MSCHAPv1, MSCHAPv2, EAP-Proxy
- TACACS+: PAP, CHAP, MSCHAPv1
- LDAP: PAP
- NT: PAP
- Kerberos: PAP
Применение
На практике для решения вашей проблемы стоит проверить следующие моменты:
-
Проверка Конфигурации AAA на ASA: Убедитесь, что сервер аутентификации настроен корректно и что на нем поддерживаются нужные вам протоколы.
-
Настройка Пользователей: Если вы используете локальную аутентификацию, убедитесь, что пароли кодированы корректно. Например, для MS-CHAP v2 пароли должны быть закодированы как unicode и MD4. Это делается с помощью команды
username
с ключевым словомmschap
илиnt-encrypted
, как в примерах ниже:username test password cisco mschap username test2 password cisco2 nt-encrypted
-
Проверка Логов и Отладки: Проверьте логи на сервере ASA и Windows VPN для дополнительной информации. Вы отметили, что дебаггер VPN на Cisco не показывает специфической ошибки, но общее сообщение об ошибке указывает на проблему аутентификации.
-
Политики Групп: Если вы используете политики групп на сервере, убедитесь, что разрешены нужные протоколы аутентификации.
-
Актуализация Программного Обеспечения: Убедитесь, что используете последнюю версию прошивки на Cisco ASA и актуальные обновления для Windows 10. Иногда проблемы возникают из-за несовместимости версий ПО.
-
Соответствие Кодировок: Проверьте, поддерживает ли ваш Cisco ASA 5505 выбранные вами протоколы аутентификации именно в связке, которая используется. Возможно, стоит попробовать другие комбинации, например, вместо MS-CHAP v2 использовать CHAP, если безопасность сети это допускает.
Эти советы должны помочь в устранении проблемы с аутентификацией. Если все указанные шаги не помогли, рассмотрите возможность расширенной диагностики с помощью системных администраторов или использования внешних инструментов для анализа трафика и аутентификации, чтобы точно определить, на каком этапе происходит сбой.