トップ «前の日記(2019-01-01) 最新 次の日記(2019-01-08)» 編集

2019-01-07 [長年日記]

_ Amazon Certificate Managerで完全自動更新を設定する際に気をつけること

ちょっとハマったのでメモ。

まとめ

  • ACM で手作業を完全に廃して自動更新するには DNS でドメインの検証を行う必要がある
  • その場合、指定ドメインか www で HTTPS 接続を受け付け、対象の ACM 発行証明書でレスポンスを返す必要あり
  • この証明書に矛盾があると自動更新は適用できない

参考

ハマったのはワイルドカードと更新時の検証と www の関係

ハマった環境の状態

  1. 人間向けドメインである www はフルマネージドホスティングで SSL 証明書の自動更新を設定している、つまり非 ACM の証明書
  2. その他のドメインは丸ごと ACM でワイルドカード証明書を発行

ここで 1 と 2 の証明書の発行元が食い違っている。食い違っていても発行自体はできる。DNS で CNAME 設定が正しくできればよいだけ。

問題は更新時。更新の際には

に従って ワイルドカード証明書の検証のために www にアクセスがくる。例えば

*.example.com

の証明書を発行していたとして、その検証のために

www.example.com

に HTTPS のリクエストがくる。

ここで www が ACM の証明書を返さないと「自動更新資格が使用不可」という状態になる。ACM 管轄外の証明書に対して自動更新を適用することはできないと判断される。

※ ちなみに、今回はワイルドカード証明書をやめることで矛盾を解消して自動更新の方を優先した。

Tags: AWS Security
本日のツッコミ(全2件) [ツッコミを入れる]
_ test (2019-01-13 12:15)

ドキュメントにある通り、*.example.comの検証のために、example.comとwww.example.comにリクエストが来る、どちらかの検証合格で更新OK、という動作と思うんですがいかがでしょう

_ wtnabe (2019-01-13 19:27)

合ってると思います。 <br> <br>厳密に言うと example.com に ACM 発行の証明書を持たせて www.example.com に ACM 発行ではない証明書を持たせる、という検証はやっていないので、分かっていないと言えば分かっていないんですけど。