Vaya, ¿no se encontró ningún certificado de servidor RSA o DSA para 'server.host.name:0'?

18

Estoy configurando un nuevo servidor web que aloja una docena de hosts virtuales en Ubuntu 12.4 usando Apache 2.2.22 con un archivo de configuración por sitio. Creé todos los archivos de configuración de una vez y ejecuté a2ensite *para habilitarlos todos a la vez. Cuando volví a cargar la configuración, falló y después de reiniciar Apache encontré el siguiente mensaje de error en mi error.log:

¡Vaya, no se encontró ningún certificado de servidor RSA o DSA para 'server.host.name:0' ?!

La mayoría de los resultados de este mensaje de error tienen años que no solucionan el problema o son errores que se han corregido https://issues.apache.org/bugzilla/show_bug.cgi?id=31709

Scott Keck-Warren
fuente

Respuestas:

4

El problema terminó en un archivo de configuración diferente del host que figuraba en el error. Se debió al hecho de que había valores duplicados de ServerName en dos de los archivos. Arreglé el equivocado y comenzó de nuevo (adiós esa media hora) :-).

Para solucionar este problema, deshabilité todos los sitios y luego habilité un par a la vez hasta que me encontré con el problema nuevamente.

Scott Keck-Warren
fuente
1

También puede recibir este error si está utilizando un certificado con varios nombres alternativos de sujeto, pero la ServerNamedirectiva no coincide con los valores CN o SAN del certificado. A menudo es el caso donde un desarrollador quiere una versión de desarrollo del mismo sitio de producción, pero no hay un certificado real para el sitio de desarrollo.

Sitios web de ejemplo:
webserver.example.com
webserver-dev.example.com

Certificado:
CN = primaryserver.example.com
SANs = webserver.example.com, puppies.example.com, kittens.example.com

La siguiente configuración provocará este error:
/etc/apache2/sites-enabled/webserver.example.com-ssl.conf
<IfModule mod_ssl.c> <VirtualHost *:443> ServerName webserver.example.com ...
/etc/apache2/sites-enabled/webserver-dev.example.com-ssl.conf
<IfModule mod_ssl.c> <VirtualHost *:443> ServerName webserver-dev.example.com ...

La siguiente configuración resuelve este problema:
/etc/apache2/sites-enabled/webserver.example.com-ssl.conf
<IfModule mod_ssl.c> <VirtualHost *:443> ServerName webserver.example.com ...
/etc/apache2/sites-enabled/webserver.example.com-ssl.conf
<IfModule mod_ssl.c> <VirtualHost webserver-dev.example.com:443> ServerName webserver.example.com ...

BrianCanFixIT
fuente
0

FWIW, me encontré con este problema nuevamente, bajo un disfraz diferente.

Si está utilizando certificados SSL comodín, asegúrese de que la entrada VirtualHost para el dominio (dominio.com) aparezca antes que cualquier otra cosa (foo.domain.com, bar.domain.com, etc.).

Intenté la configuración de uno a la vez, y todo lo demás funcionó bien hasta que agregué este archivo nuevamente.

Luego me di cuenta de que el nombre de archivo de configuración era alfabéticamente menor que el archivo de configuración con la "definición de dominio principal". Cambió el enlace simbólico para que se coloque después de la definición principal y todo funcionó de maravilla.

Ejemplo de orden de listado fallido:

foo.domain.conf
prim.domain.conf
something.domain.conf

Listado de ejemplos de trabajo:

prim.domain.conf
something.domain.conf
zfoo.domain.conf

HTH alguien más :)

Will L
fuente