Как я могу увидеть сертификаты TLS (SSL), которые использует мой сервер RADIUS, чтобы убедиться, что он отправляет правильный сертификат и цепочку?
I я реализую аутентификацию 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.