AWS Certificate Managerを手動更新する

記事タイトルとURLをコピーする

こんにちは、技術4課の多田です。

時期は梅雨ですが、もう夏のような暑い日々が続いていますね。。こう言う気温差にやられて体調を崩さないように気をつけたいものです。

さて、今回はAWS Certificate Manager(以下、ACM)の更新の話題です。

ACMのメリットの一つに証明書の有効期限を自動更新する機能がありますが、高橋のブログにもありますように自動更新ができない条件があります。

AWS Certificate Manager(ACM)の証明書更新の注意ポイント

私が担当しているお客様にて手動更新を行う機会がありましたので、その時の対応を今回の記事にしたいと思います。

はじめに

ACMでは、以下のように証明書の有効期限の更新を行っているのですが、このプロセスに合致しない場合に手動更新が必要となります。

  1. 証明書内のドメインはそれぞれ対応する検証ドメインを持つ
  2. ACM は自動更新時に検証ドメインに HTTPS リクエストを送信する
  3. HTTPS リクエストに対し、更新対象の証明書が 1 つ以上返された場合にはドメインの検証を完了する
  4. 証明書に含まれる全てのドメインの検証が完了すると、自動更新が行われる

今回この要件に当てはまらなかったため手動更新となったのですが、プロセス1にある「証明書内のドメインが対応する検証ドメイン」に合致していませんでした。

というのもACMの自動更新の対象である検証用ドメインは既に決まっており、以下のような対応表となります。
この対応表についてはドキュメントにも解説がありますので、合わせてご覧ください。
手動更新となったのは、下記でいう「*.example.com」というワイルドカードで取得したACMで、この証明書ドメインは、「example.com」や「www.example.com」といったドメインを使用していなかったため、手動更新が必要になりました。

証明書のドメイン検証用ドメイン
example.comexample.com,www.example.com
www.example.comwww.example.com,example.com
*.example.comexample.com,www.example.com
subdomain.example.comsubdomain.example.com,www.subdomain.example.com
www.subdomain.example.comwww.subdomain.example.com,subdomain.example.com
*.subdomain.example.comsubdomain.example.com,www.subdomain.example.com

手動更新の通知

手動更新の有無については、AWS Personal Health Dashboard(以下、PHD)による通知とメール通知の2つの手段で知ることが可能ですが、今回はPHDで知ることができました。

PHDのページは、AWSマネジメントコンソールにログイン後、画面上部の鈴マークを押すと3つの通知が表示されます。この中でいう、「予定された変更」にて通知がありました。

PHDの画面に遷移すると、以下のような変更対象のリソースが表示されます。

ラジオボタンを押すと、変更概要について説明書きが表示されます。
「ACMの証明書の更新のためのメールを、ドメイン認証時のメールアドレスへ送信しているため、3日以内に承認してください」という内容でした。

手動更新してみる

早速、手動更新をしようと思ったのですが、通知から3日を超過していたため、以下のように再度ドメイン認証メールを送るよう指示されました。

再度検証用メールを送るにはACMの画面から操作を行います。
更新対象のACMを選択して[アクション] -> [検証Eメールの再送信]を選択します。

ドメイン認証の検証メールが再送信後、再度ドメイン承認を行います。

ドメイン承認が成功しますと、以下の画面が表示されます。

1つ注意が必要なのが手動更新後にACMの有効期限がすぐには延長されず、少し時間が必要なようです。
私が作業した時はおおよそ1時間ほど時間がかかった感覚でした。

まとめ

ACMの手動更新を実際に行ったという内容でしたが、いかがでしたでしょうか?

手動更新の注意点は、いかにAWSからの手動更新の通知に気づくかが重要です。
気づかず放置したまま、証明書の有効期限が切れてしまったら問題ですので。。最後に通知の手段はいくつかあるため、まとめます。

  • メールによる通知
  • PHDによる通知
  • AWS Config Rulesによるメール通知(acm-certificate-expiration-checkというルールを利用する)

PHDはCloudWatch Events/SNSと連携してEメール通知するのも有効です。

昨年から東京リージョンにてACMが利用できるようになり、更新の対象の方も多いと思います。
この記事が何かの役に立てば幸いです! それでは!