Una vez que haya establecido que no coinciden, todavía tiene un problema: qué hacer al respecto. A menudo, el certificado puede simplemente estar ensamblado incorrectamente. Cuando una CA firma su certificado, le envían un bloque que se parece a
-----BEGIN CERTIFICATE-----
MIIAA-and-a-buncha-nonsense-that-is-your-certificate
-and-a-buncha-nonsense-that-is-your-certificate-and-
a-buncha-nonsense-that-is-your-certificate-and-a-bun
cha-nonsense-that-is-your-certificate-and-a-buncha-n
onsense-that-is-your-certificate-AA+
-----END CERTIFICATE-----
también le enviarán un paquete (a menudo dos certificados) que representan su autoridad para otorgarle un certificado. esto se verá algo así como
-----BEGIN CERTIFICATE-----
MIICC-this-is-the-certificate-that-signed-your-request
-this-is-the-certificate-that-signed-your-request-this
-is-the-certificate-that-signed-your-request-this-is-t
he-certificate-that-signed-your-request-this-is-the-ce
rtificate-that-signed-your-request-A
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIICC-this-is-the-certificate-that-signed-for-that-one
-this-is-the-certificate-that-signed-for-that-one-this
-is-the-certificate-that-signed-for-that-one-this-is-t
he-certificate-that-signed-for-that-one-this-is-the-ce
rtificate-that-signed-for-that-one-this-is-the-certifi
cate-that-signed-for-that-one-AA
-----END CERTIFICATE-----
excepto que, lamentablemente, no estarán tan claramente etiquetados.
una práctica común, entonces, es agruparlos en un solo archivo: su certificado, luego los certificados de firma. Pero como no se distinguen fácilmente, a veces sucede que alguien accidentalmente los coloca en el otro orden (firmando certificados, luego el certificado final) sin darse cuenta. En ese caso, su certificado no coincidirá con su clave.
Puede probar para ver lo que el certificado cree que representa ejecutando
openssl x509 -noout -text -in yourcert.cert
Cerca de la parte superior, debería ver "Asunto:" y luego cosas que se parecen a sus datos. Si por el contrario se parece a su CA, su paquete probablemente esté en el orden incorrecto; puede intentar hacer una copia de seguridad y luego mover el último certificado al principio, con la esperanza de que sea el que sea su certificado.
Si esto no funciona, es posible que deba volver a emitir el certificado. Cuando hago una CSR, me gusta etiquetar claramente para qué servidor es (en lugar de solo ssl.key o server.key) y hacer una copia con la fecha en el nombre, como mydomain.20150306.key, etc. de esa manera Es poco probable que los pares de claves públicas y privadas se mezclen con otro conjunto.