回答:
Linuxでそれを行う別の視点...これは、HAProxyのようなものがパスフレーズを要求せずに使用できるように、結果の単一ファイルに復号化された秘密鍵が含まれるようにする方法です。
openssl pkcs12 -in file.pfx -out file.pem -nodes
次に、file.pemファイルを使用するようにHAProxyを構成できます。
これは、-nodesオプションが単に秘密鍵の暗号化をバイパスするだけであることに気づくまで、私がこれらの複数の手順を実行していた以前のバージョンからの編集です。しかし、それは単に教えるのを助けるかもしれないので、私はここから離れます。
openssl pkcs12 -in file.pfx -out file.nokey.pem -nokeys
openssl pkcs12 -in file.pfx -out file.withkey.pem
openssl rsa -in file.withkey.pem -out file.key
cat file.nokey.pem file.key > file.combo.pem
次に、file.combo.pemファイルを使用するようにHAProxyを構成できます。
鍵付きのファイルと鍵なしのファイルを示す2つの別々のステップが必要な理由は、暗号化された鍵と復号化された鍵の両方を含むファイルがある場合でも、HAProxyのようなものがパスフレーズを入力するよう求められるためです。それを使用します。
他の答えは正しく、完全に説明されていますが、それらを理解するのにいくつかの困難を発見しました。ここに私が使用した方法があります(ここから取得):
openssl pkcs12 -in filename.pfx -out cert.pem -nodes
秘密鍵をPFXからPEMファイルに抽出します。
openssl pkcs12 -in filename.pfx -nocerts -out key.pem
証明書をエクスポートします(公開鍵のみを含みます):
openssl pkcs12 -in filename.pfx -clcerts -nokeys -out cert.pem
抽出した秘密鍵からパスワード(言い換え)を削除します(オプション)。
openssl rsa -in key.pem -out server.key