Назад | Перейти на главную страницу

Создание одного файла .pem для SSL веб-сервера

Чтобы использовать SSL, веб сервер который я использую, требует расположения одного файла .pem (-ssl_cert xyz.pem)

У меня есть сертификат, выданный GoDaddy. Мне дали файл:

banana.crt

Предыдущий запрос сертификата был создан с использованием сгенерированного мной закрытого ключа.

banana.key

Похоже, что поиск в Google предполагает, что создать файл .pem так же просто, как объединить их.

кошка banana.key banana.crt> banana.pem

К сожалению, запуск сервера с помощью banana.pem и посещение его с помощью Safari говорят мне:

Выдан: центром сертификации Go Daddy Secure

Этот сертификат подписан неизвестным органом

Что не так? Я или GoDaddy что-то напортачили при создании сертификата, или мне нужно как-то смешать что-то из Вот в мой файл .pem?

Я прихожу с полностью обновленной версией OS X Leopard + Safari.

В зависимости от того, какой у вас сертификат, перейдите на https://certs.godaddy.com/Repository.go и загрузите соответствующую промежуточную цепочку сертификатов (один из .crt файлы, скорее всего вот этот). Вставьте это в свой файл PEM вместе со своим собственным сертификатом и ключом.

Ваше создание .pem файл в порядке. В противном случае HTTP-сервер вряд ли запустится.

Предполагая, что у вас есть корневой сертификат GoDaddy в доверенных сертификатах вашего браузера, тогда сертификат, который они вам предоставили, известен как «связанный» сертификат. Это означает, что он не был подписан напрямую их корнем. Он подписан промежуточным центром сертификации, который сам подписан корнем.

Чтобы ваш браузер мог доверять связанному сертификату, ему необходимо знать все сертификаты в цепочке. В Apache это достигается с помощью SSLCertificateChainFile директива, которая подталкивает другие сертификаты в цепочке к клиенту во время процесса подтверждения SSL.

Вам нужно будет найти замену этой директиве в Mongoose. В руководстве не указано, как это сделать. Вы можете обнаружить, что размещение сертификатов цепочки в конце PEM может помочь.

Попробуйте создать pem-файл с помощью команды openssl.