Tengo un servidor web Apache, SSL, que tiene un certificado de servidor firmado por una CA oficial confiable. ¿Puedo configurar Apache SSL para aceptar clientes con certificados válidos firmados por CA distintas de la CA que firmó el certificado del servidor?
Recibo un ssl_error_unknown_ca_alert
error aunque configuré otras CA en Apache y el servidor se inició sin errores. He creado un archivo que contiene el certificado de CA de la CA que firmó el certificado del servidor y los otros certificados de CA de las CA en las que quiero confiar. Luego señalé la SSLCertificateChainFile
directiva a este archivo.
Estoy usando Apache 2.2.22
Editar:
Estoy usando
SSLCertificateFile
apuntar al certificado del servidor
SSLCertificateKeyFile
apuntar a la clave del servidor
SSLCertificateChainFile
apuntar a la cadena de certificados que firmó el certificado del servidor
SSLCACertificateFile
apuntar a un archivo con todas las cadenas de certificados que quiero que sean aceptadas
SSLVerifyClient require
SSLVerifyDepth 1
Apache los reconoce todos en el registro cuando reinicio el servidor y no hay errores. Sin embargo, todavía recibo un ssl_error_certificate_unknown_alert
error. También verifiqué que la cadena de certificados del cliente está presente en la SSLCACertificateFile
comparación de texto en Meld.
Respuesta1
Descubrí cuál es el problema. El certificado está firmado por una cadena de 3 CA y configuré SSLVerifyDepth en 1. Lo configuré en 10 y funcionó.
Respuesta2
Creo que desea un directorio que contenga los certificados que desea utilizar. Es posible que necesites usar algo de magia SSL para crear los enlaces simbólicos de los certificados. Vermod_ssl Uso adecuado de SSLCACertificatePath o cuál es la mejor manera de manejar varias CA de certificados de cliente aceptablespara los comandos requeridos.