Hay dos razones por las que puede haber recibido este error y, por lo tanto, dos correcciones correspondientes.
-
Falta de coincidencia de clave privada: durante la generación de CSR usando OpenSSL, la clave y la CSR podrían haberse generado en directorios diferentes. Para encontrar la clave necesaria, ejecute el siguiente comando:
buscar / -nombre “*.clave”
Una vez encontradas las claves, ejecute el siguiente par de comandos:
openssl x509 -in /ruta/a/sudominio.crt -noout -modulus | openssl sha1
openssl rsa -in /ruta/a/su.clave -noout -modulus | openssl sha1/ruta/a/sudominio.crt debe reemplazarse con la ruta a su certificado, y /ruta/a/su.clave debe reemplazarse con rutas a los archivos .key ubicados con el comando “buscar”.
Si el módulo del certificado es igual a uno de los módulos de clave, entonces esa clave coincide con el certificado, por lo que las configuraciones de nginx se pueden modificar en consecuencia.
La clave y el certificado pueden coincidir.Si ninguna de las salidas coincide con la del certificado, debe y .
-
Orden incorrecto de concatenación de los certificados.
Este orden es esencial y debe ser el siguiente: certificado de entidad final (su_dominio.crt) -> primer intermedio -> segundo intermedio -> raíz.
El certificado también puede ser del Panel de con el paquete completo concatenado en un archivo (yourdomain.ca-bundle), por lo que el comando para nginx debería aparecer así:cat tu_dominio.crttu_dominio.ca-bundle >> nginx_bundle.crt
Si el paquete se envía en archivos separados, descárguelo y utilícelo en el comando anterior en lugar de your_domainca-bundle.
Por ejemplo, Comodo (ahora Sectigo) PositiveSSL tiene los siguientes archivos en el paquete: COMODO RSA Domain Validation Secure Server CA -> COMODO RSA Certification Authority-> AddTrust External CA Root (los análogos de ECDSA son COMODO ECC Domain Validation Secure Server CA -> COMODO Autoridad de Certificación ECC).
En este caso, el comando aparecerá de la siguiente manera:
cat your_domain.crt COMODORSADomainValidationSecureServerCA.crt COMODORSACertificationAuthority.crt AddTrustExternalCARoot.crt >> nginx_bundle.crt
A continuación, corrija su host virtual para el puerto 443 en el archivo de configuración global del servidor:
servidor {
escuchar 443;
nombre_servidor nombre_su_dominio;
SSL activado;
certificado_ssl /ruta/a/nginx_bundle.crt;
clave_certificado_ssl /ruta/a/su.clave;
};
Una vez realizados los cambios anteriores, reinicie la instancia de nginx con el comando “nginx -s reload”.
Se puede comprobar la instalación del certificado.