Сертификаты при использовании cas+apache (mod_auth_cas)
Я использую аутентификацию CAS на одном сервере и веб-сайт, который должен быть защищен на отдельном сервере в моей локальной сети.
Когда я запускал CAS и Apache на одном сервере, они работали нормально. Когда я разделил их на два разных физических хоста, они больше не работают.
CAS-вход в систему работает нормально, но когда после входа в систему я перенаправляюсь обратно в свой apache, я получаю это в журнале apache:
"mod_auth_cas: Could not perform SSL handshake with example.casserver.com (check CASCertificatePath)".
Я проверил CASCertificatePath, и я убедился, что он указывает на правильный сертификат (сертификат CAS-сервера). Я получил сертификат, скопировав его с cas-host на apache-host, и проверил, что файл доступен для чтения, а URL-адрес разрешен и является правильным.
Кто-нибудь знает, что может быть не так?
Поскольку я делаю это только в ограниченной локальной сети, нет смысла привлекать CA, поэтому сертификат, используемый CAS-сервером, является простым самозаверяющим сертификатом, созданным jdk-tool:
keytool -genkey -keyalg "RSA" -dname
Это проблема? Требует ли mod_auth_cas, чтобы сертификат был подписан CA, например, путем создания моего собственного CA для сети с использованием TinyCA2?
1 ответ
Я нашел решение своей проблемы. Мой конфиг apache и cas был правильным, но ошибка в OpenSKD помешала правильному извлечению сертификата в TLSv1. Я обнаружил это при отладке моих портов SSL с помощью "openssl s_client", который является отличным инструментом отладки в подобных ситуациях.
Я удалил OpenSDK, установил SunSDK и повторно импортировал сертификаты в хранилище, которому доверяют Sun, и все работает как чудо.