Recién me acabo de registrar, pero llevo mucho tiempo consultando forosdelweb, pq siempre encuentro las respuestas a mis dudas por aquí, sin embargo ahora se me presenta un problema para el que no he encontrado solución :(
Tengo una página web en la que se requiere un certificado de cliente para acceder a una determinada área. La idea es que el sitio web admita certificados como el DNIe y similares. Tengo hecha la configuración en local, y me funciona a las mil maravillas, bajo windows, eso sí. Ahora estoy intentando reproducirlo en el servidor web (linux), y no hay manera.
Tengo instalado el openssl, un certificado equifax para el acceso a https, las CA de los certificados que quiero admitir instalados y configurados en apache, y mis navegadores tb tienen instaladas dichas CA, pero haga lo que haga, después de que el navegador me pida que seleccione el certificado de cliente que quiero enviar, siempre recibo estos mensajes:
- En firefox: "La otra parte no reconoce o confía en la CA que emitió su certificado. (Código de error: ssl_error_unknown_ca_alert)"
- En ie6: "No se pudo encontrar el servidor o error DNS"
- En ie7: "Internet Explorer no puede mostrar la página web"
- En Opera: "Conexión segura: error fatal del servidor (40)"
Si configuro apache para que el certificado sea "optional_no_ca" me permite acceder a las páginas, pero en las variables que recoge del certificado enviado, me sale esto:
Código:
por lo que no puedo autentificar al usuario mediante OCSP.SSL_CLIENT_VERIFY: FAILED:(null)
Estas son las líneas que tengo en apache para la zona en la que requiero los certificados:
Código:
Y en el SSLCACertificateFile tengo la ruta al archivo PEM que tiene los dos CA de los certificados que admito, a parte de tener tb establecidos el SSLCertificateFile y SSLCertificateKeyFile apuntando al certificado de equifax para el acceso https y a su clave, respectivamente.SSLVerifyClient require SSLVerifyDepth 2 SSLOptions +StdEnvVars +ExportCertData SSLRequire (%{SSL_CLIENT_I_DN_O} in {"NOMBRE DE ENTIDAD EMISORA 1", "NOMBRE DE ENTIDAD EMISORA 2"} \ and %{SSL_CLIENT_I_DN_CN} in {"DATOS DE ENTIDAD EMISORA 1", "DATOS DE ENTIDAD EMISORA 2"} \ and %{SSL_CLIENT_I_DN_OU} in {"TIPO DE CERTIFICADO 1", "TIPO DE CERTIFICADO 2"} ) SSLUserName SSL_CLIENT_S_DN_CN SSLRequireSSL
A todo esto, también tengo que añadir, que pese a tener el certificado ssl instalado, sigue saliendome la alerta en ie y firefox que dice que el nombre del certificado no coincide con el sitio web, pero creo que esto es pq aún no hemos terminado de migrar el dominio y estamos utilizando las DNS del anterior hosting ¿puede esto también tener algo que ver con todo lo anterior?
Agradezco cualquier pista que me podais dar T__T