Прежде всего, вы обычно генерируете запрос сертификата с вашим закрытым ключом, а затем передаете запрос в CA (Go Daddy в этом случае).Таким образом, CA НЕ получает ваш закрытый ключ.
Если вы только что запросили сертификат без запроса сертификата, то ЦС должен был сгенерировать для вас закрытый ключ (не очень хорошая идея, так как это ключ к использованию вашего сертификата, и теперь ЦС имеетдоступ к нему ...).Если вы сделали это, то CA должен предоставить вам закрытый ключ вместе с любым паролем, установленным на нем (если есть).
Также рекомендуется также получить промежуточные сертификаты между сгенерированным сертификатом для CAкорневой сертификат.Это полезно, так как некоторые клиенты не смогут подключиться к вашему серверу без их предоставления, например, браузер Firefox.
Таким образом, вы хотите объединить закрытый ключ, открытый сертификат CA и промежуточные сертификаты CA в PFXфайл, который будет использоваться вашим веб-сервером.
Закрытые ключи могут быть в одном или двух основных форматах:
- DER - это двоичный формат
- PEM- это текстовый формат - это версия формата DER для base64 с верхними и нижними колонтитулами.
Ключи сертификатов могут иметь различные форматы, но наиболее вероятными являются: - DER -это двоичный формат - PEM - это текстовый формат - это версия формата DER для base64 с верхними и нижними колонтитулами.
Расширения файлов не всегда являются лучшими индикаторами формата.Попробуйте просмотреть их в текстовом редакторе, чтобы увидеть, выглядит ли он как двоичный или base64 текст с верхними и нижними колонтитулами вокруг них.
Основная команда openssl для создания файла PFX - это команда pkcs12 .
Обычно вы делаете что-то вроде:
openssl pkcs12 -export -out name.pfx xxx
Где "xxx" зависит от того, чтоВы должны поставить.Например, если у вас есть:
- key.pem - закрытый ключ в формате pem
- cert.pem - открытый ключ в формате pem
- inter.pem - CAпромежуточный сертификат в формате pem
, тогда вся команда будет:
openssl pkcs12 -export -out name.pfx -inkey key.pem -in cert.pem -certfile inter.pem
Если вы не хотите включать inter.pem, просто удалите аргумент "-certfile inter.pem".
Если какие-либо из ваших файлов находятся вв формате DER вам необходимо сначала преобразовать их в формат PEM.
Для сертификатов вы используете команду openssl x509 , например:
openssl x509 -incert.der -inform der -out cert.pem
Преобразование закрытых ключей будет зависеть от типа закрытого ключа с использованием команд openssl rsa или ec ,Формат команды в основном одинаков для преобразования ключей в сертификаты, но вместо x509 вы используете rsa или ec.