Как только вы установили, что они не совпадают, у вас все еще остается проблема - что с этим делать. Часто сертификат может быть просто неправильно собран. Когда центр сертификации подписывает ваш сертификат, он отправляет вам блок, который выглядит примерно так:
-----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-----
они также отправят вам пакет (часто два сертификата), который представляет их полномочия по выдаче вам сертификата. это будет выглядеть примерно так
-----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-----
кроме того, к сожалению, они не будут так четко обозначены.
тогда обычной практикой является объединение всего этого в один файл - ваш сертификат, а затем сертификаты для подписи. Но поскольку их нелегко отличить, иногда случается, что кто-то случайно помещает их в другом порядке - подписывая сертификаты, затем последний сертификат - не замечая. В этом случае ваш сертификат не будет соответствовать вашему ключу.
Вы можете проверить, что, по мнению сертификата, представляет, запустив
openssl x509 -noout -text -in yourcert.cert
Вверху вы должны увидеть «Тема:», а затем что-то похожее на ваши данные. Если вместо этого он выглядит как ваш CA, вероятно, ваш пакет находится в неправильном порядке; вы можете попробовать сделать резервную копию, а затем переместить последний сертификат в начало, надеясь, что это тот, который является вашим сертификатом.
Если это не сработает, возможно, вам просто придется перевыпустить сертификат. Когда я делаю CSR, мне нравится четко обозначать, для какого сервера он предназначен (вместо просто ssl.key или server.key), и делать его копию с датой в имени, например mydomain.20150306.key и т. Д. Таким образом. Эти пары закрытого и открытого ключей вряд ли будут перепутаны с другим набором.