Я работаю над перемещением сайта из Rackspace Cloud Sites на сервер, на котором работает IIS, и мне нужно получить сертификат SSL, импортированный в IIS. Все, что у меня есть на данный момент для сертификата SSL, - это то, что мне дает Rackspace.
Текст сертификата ----- BEGIN CERTIFICATE ----- и т.д. ----- END CERTIFICATE -----
И текст закрытого ключа ----- BEGIN RSA PRIVATE KEY ----- и т.д. ----- END RSA PRIVATE KEY -----
Из того, что я нашел, мне нужен файл .pfx для импорта сертификата. Как я могу получить его, имея текст сертификата + текст ключа?
Вам необходимо объединить выданный сертификат и незашифрованный закрытый ключ в файл .pfx (формат PKCS # 12), чтобы импортировать его в IIS.
openssl pkcs12 -export -out "output.pfx" -inkey "Unencrypted_Private_Key.pem"
-in "Issued_Certificate.cer" -certfile CACert.crt
Файлы сертификата и ключа представляют собой просто текстовые файлы с расширениями .cer и .pem соответственно.
openssl rsa -in "Encrypted_Private_Key.pem" -out "Decrypted_Private_Key.pem"
Видеть больше команд OpenSSL и этот полезный онлайн-инструмент SSL.
Если ваш PFX-файл был создан правильно, но вы получаете сообщение об ошибке типа «Соединение прервано» при просмотре SSL на вашем веб-сайте после установки сертификата, попробуйте перезагрузить сервер. У меня это срабатывало в прошлом. В противном случае ваш закрытый ключ, вероятно, не соответствует вашему сертификату.
OpenSSL сделает это за вас, учитывая сертификат и подобные ключи, вы можете объединить их в формат PKCS # 12, который должен работать в большинстве случаев, когда указан .PFX. В документации по OpenSSL есть подробные примеры.