Estoy ejecutando apache en Ubuntu 14.04 e intento implementar SSL. Cualquier ayuda sería muy apreciada.
default-ssl.conf tiene:
SSLCertificateFile /etc/apache2/ssl/domain.crt
SSLCertificateKeyFile /etc/apache2/ssl/domain.csr
Cuando reinicio apache, el mensaje de error en /var/log/apache2/error.log es:
[Sun Feb 01 19:31:06.443226 2015] [ssl:error] [pid 30927] AH02203: Init: Private key not found
[Sun Feb 01 19:31:06.443408 2015] [ssl:error] [pid 30927] SSL Library Error: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Sun Feb 01 19:31:06.443424 2015] [ssl:error] [pid 30927] SSL Library Error: error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 er$
[Sun Feb 01 19:31:06.443435 2015] [ssl:error] [pid 30927] SSL Library Error: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Sun Feb 01 19:31:06.443447 2015] [ssl:error] [pid 30927] SSL Library Error: error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error (Ty$
[Sun Feb 01 19:31:06.443458 2015] [ssl:error] [pid 30927] SSL Library Error: error:04093004:rsa routines:OLD_RSA_PRIV_DECODE:RSA lib
[Sun Feb 01 19:31:06.443468 2015] [ssl:error] [pid 30927] SSL Library Error: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Sun Feb 01 19:31:06.443479 2015] [ssl:error] [pid 30927] SSL Library Error: error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error (Ty$
[Sun Feb 01 19:31:06.443487 2015] [ssl:emerg] [pid 30927] AH02311: Fatal error initialising mod_ssl, exiting. See /var/log/apache2/error.log for more inf$
apache-2.2
ubuntu
ssl
mikesynan
fuente
fuente
Respuestas:
ADVERTENCIA: nunca publique su clave privada en Internet. Ni siquiera lo copie a otra computadora, estación de trabajo, etc. Debe mantenerse lo más privado posible.
SSLCertificateKeyFile requiere una clave privada. Esta clave generalmente se genera antes de CSR o al mismo tiempo. Busque un archivo que comience con una línea que contenga:
BEGIN PRIVATE KEY
La CSR (solicitud de firma de certificado) se requiere solo cuando solicita firmar el certificado. Después de eso puedes descartarlo.
Si perdió la clave privada, deberá generar una nueva clave privada, luego generar una nueva CSR y pedirle a la CA (autoridad de certificación) que firme la CSR nuevamente.
fuente
Aquí está el problema:
Pones aquí tu archivo de solicitud de firma de certificado (CSR) por error. En su lugar, debe colocar el archivo de clave privada que utilizó para generar la CSR. Ese archivo de clave privada no debe estar protegido con contraseña, de lo contrario, deberá escribir una contraseña cada vez que (reinicie) Apache.
Para beneficio de las generaciones futuras, aquí hay un breve resumen de cómo generar CSR-s con OpenSSL (un buen tutorial está disponible en la documentación de Ubuntu ):
1) Genere la clave del servidor:
Esto requiere que especifique una contraseña.
2) Al hacer una clave privada sin contraseña, ingrese la contraseña que utilizó anteriormente cuando se le solicite:
3) Genere la CSR con su clave privada sin contraseña:
donde "mydomain.org" podría ser su dominio. Tienes que responder algunas preguntas de forma interactiva. Una vez que haya terminado, envía el
mydomain.org.csr
archivo a su autoridad de certificación. Recuperará un*.crt
archivo o un*.pem
archivo. Asumamos que te dieronmydomain.org.crt
. Instálelo como su certificado y el archivo de clave sin contraseña como su clave (las ubicaciones son válidas para Ubuntu 14.04, pueden estar en otro lugar en otros sistemas, consulte los documentos de Apache2):Y finalmente edite la configuración de Apache2 (podría ser
default-ssl.conf
):Espero que esto ayude.
fuente
Sé que alguien ya ha respondido esta pregunta, pero quería que otros supieran lo que me sucedió cuando recibí este error.
En mi causa, por error tuve SSLCertificateFile en lugar de SSLCertificateChainFile para mi paquete de certificados. Este error seguía apareciendo y me estaba dando vueltas. Seguía pensando que mi clave privada estaba equivocada.
fuente
Sé que esta publicación es antigua, pero pensé que debería agregarle más, ya que este es el primer enlace en una búsqueda de Google sobre el error: "Inicial: clave privada no encontrada"
He visto esto suceder antes y resultó ser una mala clave privada. Usé strace para rastrear la última clave privada que apache intentó cargar. Una vez que lo eliminé del directorio ssl y httpd.conf, Apache se reinició sin problemas.
Clave SSL incorrecta: -rw-r ----- 1 raíz 754974732 1.7K 31 de mayo de 1987 /var/cpanel/ssl/installed/keys/c129e_4ed23_b7c0d7f821952179fc8006506ab06b72.key
Entorno: SO: CentSO 6.9 Panel de control: cPanel 11.64 Apache versión 2.2
tl;dr: Find the bad private key that Apache is trying to load and backup it up and remove it from Apache's configuration file.
¡Espero que esto ayude!
fuente
code
. Gracias por contribuirEstuve haciendo girar mis ruedas en este por un momento, pero asegúrese de tener un archivo de clave privada completo. Resultó que me faltaban un par de líneas.
El comando para verificar su clave privada es:
reemplace /etc/httpd/certs/server.key con la ruta completa a la clave privada de su servidor y, si todo está bien, verá:
Espero que ayude a alguien y por cierto, mi servidor era CentOS 7.6 con Apache / 2.4.6
fuente