ACMパブリック証明書の検証方法はDNS検証がオススメ

2025/06/30
石原

こんにちは。株式会社リンクネット、ソリューション事業部の石原です。

AWSでALB(ロードバランサ)やCloudFront(CDN)を利用している場合、AWS Certificate Manager(ACM)で無料のSSL/TLSパブリック証明書を利用することができますが、発行時に、証明書に含まれるドメインを所有または管理していることを証明する必要があります。

所有権の証明には、DNS検証やEメール検証が利用できます。

DNS検証の場合、CNAMEレコードを追加する必要があり、証明書発行リクエストから72時間以内にACMがCNAMEレコードを確認できないと証明書発行リクエストは失敗してしまいます。

弊社のお客様で、ACMの無料証明書をご希望のお客様がいらっしゃったのですが、DNSレコードの書き換えにプロバイダーへの申請が必要で、作業には1週間程度かかるとのことでした。

そのため、サービス立ち上げ時にはEメール検証で証明書を発行したのですが、Eメールによる承認が毎年必要なこと、Eメールの送信から72時間以内に承認作業を行う必要があることが負担になっていました。

さて、DNS検証時に設定するCNAMEレコードのレコード名、レコード値は証明書発行リクエストごとに変化すると思い込んでいたのですが、実は証明書に含まれるホスト名が同じであれば、複数回証明書発行リクエストを行なっても同じ値になるそうです。

試しに同じ内容の証明書発行リクエストを複数実行したところ、確かに同じCNAMEレコードが指定されたため、以下の手順で新しい証明書を発行しました。

  1. ACMで証明書発行リクエストを実行する
  2. 指定されたCNAMEレコードの登録をプロバイダーに申請する
  3. プロバイダーから作業終了の連絡が届く
  4. 最初の証明書発行リクエストは失敗しているので、再度証明書発行リクエストを実行する
  5. すぐに検証が完了し、証明書が発行される
  6. ALBなどのサービスで使用する証明書を、新しく発行された証明書に切り替える

DNS検証の場合、CNAMEレコードが存在していれば毎年の所有権証明は不要で、ACMが自動更新してくれます。

これで毎年の証明書更新時の承認作業が不要になり、お客様(と弊社)の負担を減らすことができました。

前の記事