Вопрос или проблема
Я настраиваю freeradius 3.2.6 на Ubuntu 24.04. Я создаю сертификаты с помощью предоставленного скрипта и могу подключаться по TLS. Проблема в том, что появляется следующее предупреждение:
Чтобы запретить эти сертификаты, см. ‘reject_unknown_intermediate_ca’
Я проверил клиентские сертификаты с помощью openssl, и они показывают ОК. Я не использую промежуточный центр сертификации.
Файл /mods-enable/eap настроен так, чтобы ca.pem был в правильном каталоге.
Я попробовал всё, но не могу найти способ решить это. Если кто-то может помочь, буду признателен.
Ответ или решение
Проблема с сертификатами в Freeradius: "1 intermediate CA cert(s) untrusted"
При настройке сервера Freeradius версии 3.2.6 на Ubuntu 24.04 вы столкнулись с предупреждением о недоверенности одного из промежуточных сертификатов. Давайте разберёмся с этой проблемой по порядку.
1. Причины ошибки
Сообщение "1 intermediate CA cert(s) untrusted" указывает на то, что один из промежуточных сертификатов не распознаётся как доверенный. Несмотря на то, что вы уточнили, что не используете промежуточные центры сертификации (CA), проблема может возникать по нескольким причинам:
- Неправильная конфигурация файлов сертификатов – Возможно, в конфигурации сервера Freeradius указаны неверные пути к файлам сертификатов.
- Ошибки в самих сертификатах – Хотя вы проверили сертификаты с помощью OpenSSL и они выдали "OK", может быть, что цепочка сертификатов всё-таки нарушена или неправильно сгенерирована.
- Настройки модуля EAP – Возможно, в конфигурации EAP модуля есть ошибки.
2. Проверка сертификатов
Для начала убедитесь, что ваши сертификаты корректны и полные. Используйте следующую команду для проверки:
openssl x509 -in path/to/your/certificate.pem -text -noout
Эта команда позволит вам просмотреть важную информацию о сертификате и убедиться, что он содержит правильные данные.
Если вы используете цепочку сертификатов, убедитесь, что все промежуточные сертификаты указаны в правильном порядке.
3. Настройка Freeradius
Проверьте файл конфигурации /mods-enabled/eap
и убедитесь, что в нём правильно указаны пути к вашим CA-сертификатам. Например:
eap {
tls-config tls-common {
# Укажите правильные пути к файлам сертификатов
ca_cert_file = "/etc/freeradius/certs/ca.pem"
private_key_file = "/etc/freeradius/certs/server.key"
certificate_file = "/etc/freeradius/certs/server.pem"
}
}
4. Параметры reject_unknown_intermediate_ca
Как указывает ошибка, опция reject_unknown_intermediate_ca
в конфигурации EAP может быть причиной отказа в доверии. Если вы уверены в корректности вашего сертификата, вы можете временно отключить эту настройку:
reject_unknown_intermediate_ca = no
Тем не менее, рекомендуется лучше решить проблему с сертификатами, чем отключать проверку.
5. Генерация корректной цепочки сертификатов
Если вы создавали свои сертификаты с помощью скрипта, убедитесь, что все сертификаты правильно сгенерированы. Возможно, вам стоит рассмотреть вариант использования более надёжного инструмента, такого как easy-rsa
для генерации ваших сертификатов и ключей.
Используйте команду для генерации новых сертификатов:
make-cadir ~/my-easy-rsa
Следуйте руководству по созданию сертификационной цепочки и убедитесь, что все ключи и сертификаты правильно связаны.
6. Заключение
Проблема с недоверенными промежуточными сертификатами на Freeradius может быть решена с помощью внимательной проверки всех сертификатов и их конфигурации. Убедитесь, что пути к сертификатам указаны верно, а сами сертификаты корректны и полны. Если вы всё еще сталкиваетесь с трудностями, рассмотрите возможность использования более совершенного набора инструментов для управления сертификатами.
Если у вас возникнут дополнительные вопросы, не стесняйтесь обращаться за помощью в профессиональные сообщества или форум, посвящённый Freeradius.