Как я могу увидеть сертификаты TLS (SSL), которые использует мой сервер RADIUS, чтобы убедиться, что он отправляет правильный сертификат и цепочку?
Я реализую аутентификацию 802.1x с сервером RADIUS, но у меня проблемы с приемом сертификата у некоторых соискателей (клиентов). Я хотел бы видеть сертификаты, отправленные сервером, простым способом, похожим на то, как вы используете openssl s_client
для отладки TCP TLS трафика.
Ты можешь использовать eapol_test
, который является частью в wpa_supplicant
пакет. Вам необходимо скачать исходный код и скомпилировать его с помощью make eapol_test
(по умолчанию не строится). Он должен работать как минимум в Linux, Windows и Mac OS X (не рекламируется так часто, но я мог бы скомпилировать и использовать его на последнем).
Вы создаете файл конфигурации (несколько примеров здесь, но мне не удалось найти обзор всех вариантов, думаю src/eap_peer/eap_config.h
содержит некоторые), а затем запустите инструмент:
./eapol_test -c <config file> -s <shared secret> -a <ip address of radius server>
Во всех выходных данных вы должны увидеть, что сертификат TLS прошел мимо, но вы также можете выгрузить его в файл, передав -o
вариант:
-o<server cert file> = Write received server certificate
chain to the specified file
Если вы укажете ca_cert
в файле конфигурации, программа также выполнит проверку отправленной цепочки, и вы увидите результат проверки в выводе программы (не в файле с выгруженными сертификатами).
Впоследствии вы также можете использовать в rad_eap_test
обертка, который возвращает вывод состояния, совместимый с Nagios.