何でも屋エンジニアのブログ

ソフトウェア関連技術、コミュニティ、日々の雑貨

AWSのELBへSSL証明書アップロード時に「Unable to parse key; the body is encrypted.」エラー

ELBへSSL証明書をアップロードする際に以下のエラーが出ました。

f:id:biibiebi:20150913140340p:plain

原因

  • opensslで秘密鍵を作成する際に、パスワード設定し暗号化していたことが原因だった。

確認方法

  • 秘密鍵を参照し、2行目・3行目に以下の内容がある場合は暗号化されている。
$ cat server.key 
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,E3CB8B1CE0E5CBDF7819D18627823618

〜略〜
-----END RSA PRIVATE KEY-----

対処法

  • 以下のコマンドを実行する。ただし、秘密鍵名は「server.key」、作業ディレクトリは秘密鍵を配置しているディレクトリである。
$ openssl rsa -in server.key -out server.key 
Enter pass phrase for server.key:  # ←ここで最初に秘密鍵を暗号化したパスワードを入力する
writing RSA key
  • 秘密鍵の内容確認。Proc-Type、DEK-Infoの記述がないことを確認する。
$ cat server.key 
-----BEGIN RSA PRIVATE KEY-----
〜略〜
-----END RSA PRIVATE KEY-----
  • 以上が終了したら、ELBに証明書をアップロードする。

f:id:biibiebi:20150913142608p:plain

参考

www.digicert.ne.jp

ELBへ証明書のアップロード方法を知りたい方は以下を参照下さい。

dev.classmethod.jp