AWS Certificate Manager証明書の自動更新周期はきっちり1年とは限らない

2020.08.31

ども、ゲストの大瀧です。

個人ブログのTLS証明書にAWS Certificate Manager(以下ACM)を利用しており、今日、今年の自動更新を迎えました。 以前と微妙に時期がずれている気がしたので履歴を調べて見た様子をレポートします。

ACM(AWS Certificate Manager)証明書の自動更新とは

ACMはAWSのロードバランサやCDN向けに利用できる無料のTLS証明書提供サービスです。無料という点も魅力ですが、個人的に一番有り難いと思っているのは自動更新してくれる点です。Webサービスの運用ではTLS証明書の更新はクリティカルかつ手作業が入ることでオペミスにもなりやすいアキレス腱のような業務と言えます。ACMの自動更新でそういったミスを防ぎ、安定運用を実現する大きな助けになります。

ACM証明書の期限は13ヶ月とドキュメントに明示されている一方で、どのようなタイミングで自動更新がかかるのかは明記が無かったため、参考として共有します。

自動更新の履歴

AWS Management ConsoleのACM証明書のプロパティ画面には、初めて証明書発行をリクエストした日時、最新の証明書の発行日時、その証明書の開始/終了の日時が表示されます。以下のような感じです。

また、今日証明書が更新され、たまたま更新前の画面をブラウザに表示したままだったので、一つ前の証明書情報を確認することができました。↓になります。

これまでの内容を総合すると、以下にまとめられます。

  • 初回リクエストは 2017/11/24
  • 1回目の更新は 2018/10月〜11月近辺と予想
  • 2回目の更新は 2019/09/29
  • 3回目の更新は 2020/08/31 (今回)

ということで、思ったより更新時期にバラつきがあることがわかります。証明書の期限が13ヶ月と半端なのは12ヶ月(1年)に余裕をもってもう1ヶ月なのかなと予想したのですが、実際はそれよりも結構早く更新が走っていることがわかりますね。期限が切れてしまうと障害になってしまうためもちろん避けるべきですが、1年よりも短く不定期に更新が走ることは運用上知っておいても損は無いかなと思いました。

自動更新は以下の検証プロセスを成功する必要があるため、SAN(Subject Alternative Name)を含む証明書の場合は運用上気を遣うケースも少なくないと思います。

検証に当たってDNS構成に問題が無いか、案件によっては年間の運用タスクを設定している場合は、その時期が不定である点を留意しておきましょう。検証は何度か行われるチャンスがありますので、初回の検証に失敗して通知が来たらそれをリカバリする、という運用タスクの積み方でも大丈夫かもしれません。

まとめ

AWS Certificate Manager証明書の自動更新周期はきっちり1年とは限らない様子をご紹介しました。