AWS ELBに証明書をインストールする際にハマったこと

  • このエントリーをはてなブックマークに追加
  • Pocket

RapidSSLで購入した証明書をAWSコンソールからELBにインストールしようとして2時間くらいハマった備忘録。

「ポートのリスナーを作成できませんでした」
「SSL 証明書をアップロードできませんでした」
(´・ω・`)

結果的にaws cliでやったら30秒で終わったorz

事前準備

  • private.pem
    • OpenSSLで作成したパスフレーズなしの秘密鍵
  • certificate.pem
    • Rapidからもらったサーバ証明書
  • certificate-chain.pem
    • Rapidの中間証明書

コンソールからアップロード

上記の証明書たちをバランサにインストールしようとAWSコンソールでロードバランサを開く。

aws-elb-ssl

それぞれ入力する。

証明書名
my-cert

プライベートキー
private.pemの中身

パブリックキー証明書
certificate.pemの中身

証明書チェーン
certificate-chain.pemの中身

保存ボタンを押して速攻完了と思いきや以下のエラーが。

新しいリスナーの作成

次の SSL 証明書を作成しました: my-cert。
ポートのリスナーを作成できませんでした: 443。 Server Certificate not found for the key: arn:aws:iam::***********:server-certificate/my-cert
ロールバックしています

新しい SSL 証明書をロールバックしました
リスナーの更新が失敗しました。
変更は正常にロールバックされました。

どういうこった?

ググっても特に情報がない。

新しいELBを作成する際にアップロードしてみる

さっきのは既存のELBを編集した場合だったので、新規でやってみる。

が、

やはりエラー。

SSL 証明書をアップロードできませんでした: The specified value for serverCertificateName is invalid. It must contain only alphanumeric characters and/or the following: +=,.@_-

さっきとはエラーが違うので期待したが、これまたググっても有用な情報は出てこず。。。

証明書をaws cliでアップロードする

$cat ****.pem のコピペミスかなーと思い、おとなしくcliでやってみる。

aws cliのインストールと設定はこちらを参照。

cliでのアップロード方法は公式ドキュメントがあるのでコピペして証明書のファイル名を変えるだけでOK.
※見やすいように改行が入っております

実行すると以下のjsonが返ってくる。

エラーもなく終了orz.

結論

(たぶん)コピペミス

 

俺の2時間よ、返ってきてくれー

  • このエントリーをはてなブックマークに追加
  • Pocket

SNSでもご購読できます。

コメント

  1. 匿名 より:

    ELBのコンソールからのSSL証明書アップロードで同様の問題にぶつかっておりました。
    キーと中間証明書のフォームでコピペを行ったところ、改行コードにCR+LFが混ざっていたため、エラーになっていたようでした。
    改行コードをLF形式に変更して入力したところ、正常にアップロードされました。

コメントを残す

*