697

SSL証明書からPEMファイルを作成するにはどうすればよいですか?

これらは私が利用できるファイルです:

  • .crt
  • server.csr
  • server.key
4

11 に答える 11

931

キーはすでにPEM形式である可能性がありますが、.crtまたは.keyで名前が付けられているだけです。

ファイルの内容がで始まり-----BEGIN、テキストエディタで読むことができる場合:

このファイルはbase64を使用しており、バイナリ形式ではなくASCIIで読み取ることができます。証明書はすでにPEM形式になっています。拡張子を.pemに変更するだけです。

ファイルがバイナリの場合:

server.crtの場合、次を使用します

openssl x509 -inform DER -outform PEM -in server.crt -out server.crt.pem

server.keyにはopenssl rsa、の代わりに使用しますopenssl x509

server.keyはおそらく秘密鍵であり、.crtファイルは返された署名済みのx509証明書です。

これがWebサーバー用であり、個別の秘密鍵と公開鍵のロードを指定できない場合:

2つのファイルを連結する必要がある場合があります。この使用のために:

cat server.crt server.key > server.includesprivatekey.pem

このファイルで保持する権限を管理しやすくするために、「includesprivatekey」を使用してファイルに名前を付けることをお勧めします。

于 2009-06-13T23:31:24.157 に答える
251

AWS ELB に対してこれを行う必要がありました。ダイアログに何度も打ちのめされた後、最終的にこれが私にとってうまくいきました:

openssl rsa -in server.key -text > private.pem
openssl x509 -inform PEM -in server.crt > public.pem

ありがとうNCZ

編集:@floatingrockが言うように

AWS では、ファイル名の先頭にfile://. したがって、次のようになります。

 aws iam upload-server-certificate --server-certificate-name blah --certificate-body file://path/to/server.crt --private-key file://path/to/private.key --path /cloudfront/static/

http://docs.aws.amazon.com/cli/latest/reference/iam/upload-server-certificate.html

于 2012-08-30T17:30:52.537 に答える
94

pemファイルには、証明書と秘密鍵が含まれています。証明書/キーの形式によって異なりますが、おそらく次のように簡単です。

cat server.crt server.key > server.pem
于 2009-06-13T23:30:44.703 に答える
31

さらに、パスフレーズを要求したくない場合は、次のコマンドを実行する必要があります。

openssl rsa -in server.key -out server.key
于 2010-10-21T08:35:55.773 に答える
8

Godaddy からアプリ エンジンに移行しようとしていました。トリックは次の行を使用することでした:

openssl req -new -newkey rsa:2048 -nodes -keyout name.unencrypted.priv.key -out name.csr

そのままですが、name を私のドメイン名に置き換えます (実際には重要ではありません)。

そして、www.name.com としての通称/組織に関するすべての質問に答えました。

次に、csr を開いてコピーし、go daddy に貼り付けてから、ダウンロードして解凍し、ターミナルで解凍したフォルダーに移動して、次のように入力しました。

cat otherfilegodaddygivesyou.crt gd_bundle-g2-g1.crt > name.crt

次に、 Trouble with Google Apps Custom Domain SSLの次の手順を使用しました。

openssl rsa -in privateKey.key -text > private.pem
openssl x509 -inform PEM -in www_mydomain_com.crt > public.pem

まったく同じですが、privateKey.key の代わりに name.unencrypted.priv.key を使用し、www_mydomain_com.crt の代わりに name.crt を使用しました。

次に、「PEM でエンコードされた X.509 証明書」の public.pem を管理コンソールにアップロードし、「暗号化されていない PEM でエンコードされた RSA 秘密鍵」の private.pem をアップロードしました。

..そして、それはついにうまくいきました。

于 2015-08-09T15:35:38.163 に答える
4

GoDaddy 証明書を AWS にアップロードしようとして何度か失敗しましたが、最終的には非常に簡単でした。何も .pem に変換する必要はありません。チェーン パラメーターに GoDaddy バンドル証明書を必ず含める必要があります。

aws iam upload-server-certificate
    --server-certificate-name mycert
    --certificate-body file://try2/40271b1b25236fd1.crt
    --private-key file://server.key
    --path /cloudfront/production/
    --certificate-chain file://try2/gdig2_bundle.crt

そして、以前に失敗したアップロードを削除するには、次のことができます

aws iam delete-server-certificate --server-certificate-name mypreviouscert
于 2016-06-07T08:32:41.600 に答える