Вопрос или проблема
У нас в компании есть следующая конфигурация
- Synology RS812+ с хостингом LDAP, RADIUS, DNS (Версия DSM 5.0-4458 Обновление 2)
- 2*Cisco Wifi APs WAP561 (Прошивка 1.0.3.4)
- Cisco Router ISA500 (Прошивка 1.2.19)
Что мы хотим – это аутентификация и авторизация к WiFi на основе LDAP через RADIUS
Мы установили сертификат на Synology, который выдан GlobalSign для корневого домена example.com и nas.example.com (Ранее мы использовали нашWildcard сертифицируют, который Synology показал как самоподписанный, возможно, расширения использования были отсутствуют, поэтому я купил другой)
Я настроил точки доступа (WPA2) для подключения к RADIUS (по IP) и RADIUS для доступа к LDAP (та же машина).
В основном все работает, кроме того, что наши клиенты Win7 (и некоторые Vista) имеют проблемы с выполнением TLS Handshake с RADIUS
К сожалению, вывод не очень хороший, так как он показывает только
Auth 2014-04-15 10:01:49 Неверный логин (TLS Alert read:fatal:access denied): [[email protected]/<через Auth-Type = EAP>] (от клиента CiscoHardware порт 0 cli 00-26-82-ED-61-92)
Ошибка 2014-04-15 10:01:49 TLS Alert read:fatal:access denied
Моя догадка: Клиент (машина Win7) не принимает сертификат, что приводит к неудаче аутентификации. Если я снимаю отметку с параметра “Проверить сертификат сервера”, все работает.
Проблема, почти уверенно, связана с сертификатом, используемым в аутентификации, так как есть строгие требования к сертификату от Microsoft:
http://support.microsoft.com/kb/814394/en-us
Я уже проверил идентификатор объекта, который равен 1.3.6.1.5.5.7.3.1 и присутствует в сертификате
Есть два других момента, которые я, возможно, не полностью понимаю:
- Имя в строке Subject сертификата сервера соответствует имени, которое настроено на клиенте для подключения.
- Для беспроводных клиентов расширение Subject Alternative Name (SubjectAltName) содержит полное доменное имя сервера (FQDN).
Есть один промежуточный сертификат, который присутствует на RADIUS, корневой сертификат (GlobalSign) доверен ОС.
Что касается доменного имени: как клиент проверяет это, если он подключается к SSID, а AP указывает на сервер RADIUS по IP?
Как я могу немного глубже отладить это? Я работаю на машине Win7, но если нужно, доступен Linux
Из вашего запроса не совсем ясно, но вашей проблемой может быть то, что не все ваши сертификаты правильно помечены:
Согласно URL, который вы указали:
* Сертификат клиента должен иметь расширение 1.3.6.1.5.5.7.3.2
* Сертификат сервера должен иметь расширение 1.3.6.1.5.5.7.3.1
Я также считаю, что это промежуточный CA, который вы упоминаете, должен иметь расширение 1.3.6.1.5.5.7.3.1.
Короче говоря, я думаю, что ваша проблема заключается в разделе “Требования к сертификату сервера” на странице.
Это показывает конфигурацию openssl, которую вы можете использовать при генерации сертификатов: http://lists.freeradius.org/pipermail/freeradius-users/2011-April/052962.html
Конечно, вам нужно будет добавить xpclient_ext/xpserver_ext к сертификатам при их генерации.
Чтобы убедиться, что проблема в сертификате, вы можете провести тест:
Установите веб-сервер и настройте https. Используйте свой сертификат и свяжите его с портом https.
Добавьте строку в hosts-файл одного из клиентов Win7, которая соответствует имени сертификата и IP веб-сервера.
Используйте IE и откройте вашу новую веб-страницу.
IE покажет, доверен ли сертификат, и вы сможете открыть свойства сертификата, чтобы увидеть детали.
Не используйте Firefox, так как он не использует системный хранилище сертификатов
Ответ или решение
Проблема с TLS и RADIUS для Wi-Fi на Windows 7: Анализ и Решение
Ваша текущая ситуация с подключением к Wi-Fi через RADIUS и аутентификацией по протоколу TLS является достаточно распространенной проблемой, особенно когда дело касается старых операционных систем, таких как Windows 7. Давайте проведем анализ и возможные пути решения.
Обзор Настройки
Вы описали систему, состоящую из нескольких компонентов:
- Сервер Synology RS812+: Установлен LDAP, RADIUS и DNS (DSM 5.0-4458 Update 2).
- Cisco Access Points (APs): Два устройства WAP561 (Firmware 1.0.3.4).
- Cisco Router ISA500: Устройство на прошивке 1.2.19.
Вы настроили AP на использование WPA2 для подключения к RADIUS, который, в свою очередь, обращается к LDAP для аутентификации. Из вашего рассказа видно, что проблема заключается в аутентификации Windows 7 (и некоторых клиентов на Vista), которые не могут установить TLS-соединение с RADIUS-сервером.
Основные Доводы
Ошибка, упомянутая вами:
TLS Alert read:fatal:access denied
сильно указывает на проблемы с сертификатами. Давайте углубимся в возможные причины и пути их устранения:
-
Сертификаты и их Критерии:
- Сертификаты должны содержать правильные расширения. Для сервера требуется объектный идентификатор (OID)
1.3.6.1.5.5.7.3.1
, а для клиента –1.3.6.1.5.5.7.3.2
. Убедитесь, что используемые вами сертификаты соответствуют этим требованиям. - Вы также упомянули, что у вас есть промежуточный сертификат. Убедитесь, что этот сертификат корректно установлен и доверен вашим клиентским устройствам.
- Сертификаты должны содержать правильные расширения. Для сервера требуется объектный идентификатор (OID)
-
Настройки Имени Сертификата:
- Точное соответствие имени в строке Subject сертификата и конфигурации на клиенте. Сертификат должен содержать полное доменное имя (FQDN), которое запрашивает клиент (например, nas.example.com).
- Subject Alternative Name (SubjectAltName) должен также включать FQDN, чтобы Windows могла удостовериться в подлинности сервера. Это критически важно для успешной проверки сертификата.
-
Проверка Доверия к Сертификатам:
- Проверьте, чтобы корневой сертификат GlobalSign был установлен в доверенные сертификаты на Windows 7. Ошибки с доверенными сертификатами часто приводят к отказу в аутентификации.
- Вы можете протестировать сертификат, создав HTTPS-сервер с использованием вашего сертификата и запустив браузер Internet Explorer на клиенте Windows 7. Это покажет, доверяют ли системе ваши сертификаты.
Отладка и Диагностика
Для дальнейшей диагностики можно предпринять несколько шагов:
- Используйте Wireshark для прослушивания трафика на порте 1812 (или другом, если вы его изменили) и посмотрите на TLS-запросы и ответы. Это может помочь выявить, где происходит сбой в процессе аутентификации.
- Логи сервера RADIUS могут дать больше информации. Убедитесь, что запись всех действий включена и доступна для анализа.
- Проверьте наличие актуальных обновлений для Windows 7. Иногда проблемы с совместимостью и безопасности могут быть решены благодаря критическим обновлениям.
Заключение
Проблема с аутентификацией TLS, возникающая на клиентах Windows 7, связана, скорее всего, с конфигурацией сертификата, чем с самим RADIUS или AP. Рассматривая все вышеперечисленные аспекты, вы сможете существенно увеличить шансы на успешное решение проблемы. Если что-то не сработает, продолжите тестирование с использованием альтернативных методов или устройств, чтобы сузить круг возможных причин.
Надеемся, что указанные рекомендации помогут вам наладить надежное соединение с вашей Wi-Fi сетью!