okochangの馬鹿でありがとう

ふらふら適当に世間を生きる日々でございます

pfx形式、PKCS#12形式の証明書をOpenSSLでpem形式に変更する

ELBでSSLの処理をさせている場合、Management ConsleやコマンドラインツールでSSLサーバ証明書をELBに設定する必要があります。
この場合、アップロードするサーバ証明書はPEM形式となります。
しかし色々あって(IISIISIISIIS)pfx(PKCS12)形式の証明書を頂いた場合に、毎回変換方法を調べてるので自分のブログにも残しておきたいと思います。

手順

証明書と秘密鍵の両方を取り出します

$ openssl pkcs12 -in input.pfx -nodes -out output.pem

秘密鍵のみを取り出す場合

$ openssl pkcs12 -in input.pfx -nocerts -nodes -out output_key.pem

サーバ証明書のみを取り出す場合

$ openssl pkcs12 -in input.pfx -clcerts -nokeys -out output_crt.pem

出力されたファイルの中からそれぞれ-----BEGIN RSA PRIVATE KEY-----から-----END RSA PRIVATE KEY-----までと-----BEGIN CERTIFICATE-----から-----END CERTIFICATE-----までをELBアップロードすればOKです。
ELBにSSLサーバ証明書を設定する場合は秘密鍵のパスフレーズを解除する必要ががありますが、もし秘密鍵をパスフレーズ付きにしたい場合は-nodesオプションをつけないで実行して下さい。

参考

ほとんどこちらの記事そのままです。
http://system-admin.seesaa.net/article/94984370.html