Я купил SSL-сертификат Gandi.net и слежу за этим руководство.
и ... получено, что Pem недействителен / ключ не соответствует сертификату Pem.
Я пробовал 3 раза и действительно не знаю, что происходит.
Вы можете помочь ?
Не знаю, актуально ли это больше, но у меня были похожие проблемы с использованием Heroku SSL Endpoint, и в итоге я написал об этом сообщение в блоге:
РЕДАКТИРОВАТЬ: с Heroku вам нужно убедиться, что ваши сертификаты находятся в правильном порядке. Если вы уже отправили / добавили сертификат, который испорчен, вы можете попробовать расположить их в другом порядке (неэффективно, но он выполняет свою работу), и вы можете проверить Доктор Heroku SSL и используйте опцию «bypass», чтобы отказаться от обычных демонстрационных ограничителей, которые позволят вам добавлять / обновлять новый сертификат (ы).
TL; DR => при использовании Heroku SSL Endpoint убедитесь, что вы включили весь пакет, и убедитесь, что содержимое этого пакета находится в правильном порядке. Попробуйте Heroku SSL doctor, если у вас возникли проблемы.
Думаю, я мог столкнуться с подобной проблемой при попытке использовать сертификат Gandi на Heroku. Heroku продолжал жаловаться, что мой файл PEM не соответствует моему ключу, и запустил openssl x509 -noout -modulus -in example.com.crt
дал мне "unable to load certificate
" ошибка.
Проблема в моем случае была очень простой: когда я скачал сертификат от Ганди, между текстом сертификата и строкой «--END CERTIFICATE ...» была дополнительная пустая строка:
ghjg86GHHJ47Nmmmaiuoj8bUW8bbn/9w78sTxuguHQWjhuhuQWQhuybyyA==
-----END CERTIFICATE-----
Когда я удалил пустую строку, все заработало отлично:
ghjg86GHHJ47Nmmmaiuoj8bUW8bbn/9w78sTxuguHQWjhuhuQWQhuybyyA==
-----END CERTIFICATE-----
Я думаю, что когда вы создаете окончательный файл PEM, вы хотите объединить свой сертификат и сертификат вашего CA, а не свой сертификат и свой закрытый ключ:
cat example.com.crt certificate-issuer.com.pem > example.com.pem
Наконец я нашел http://blog.bloom.io/2011/09/16/https-ssl-table-stakes/ очень помогает со всем процессом.
Я получил свои сертификаты от другого поставщика, но я сохранил свой открытый сертификат и закрытый ключ в отдельных файлах, и это сработало.