AWS Certificate Manager
SSL/TLS 証明書のプロビジョニング、管理、デプロイを自動化するサービス
何ができるか
AWS Certificate Manager (ACM) は、Web サイトやアプリケーションで使用する SSL/TLS 証明書を無料で発行し、自動更新するサービスです。CloudFront、Elastic Load Balancing、API Gateway などの AWS サービスに証明書をワンクリックでデプロイできます。証明書の有効期限管理や更新作業から解放され、HTTPS 通信を簡単に実現できます。
どのような場面で使うか
Web サイトの HTTPS 化、API エンドポイントの暗号化通信、カスタムドメインでの CloudFront ディストリビューション設定、ロードバランサーでの SSL 終端処理などに利用されています。複数のドメインやサブドメインをまとめて 1 枚の証明書でカバーすることも可能です。 この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。
身近な例え
運転免許証の自動更新サービスに例えるとわかりやすいでしょう。通常、SSL 証明書は有効期限があり、期限切れになると Web サイトが「安全でない」と表示されます。ACM は免許証 (証明書) を無料で発行し、期限が近づくと自動的に更新してくれます。更新手続きを忘れて失効する心配がなくなります。
ACM とは
この記事は約 2 分で読めます。 AWS Certificate Manager (ACM) は、SSL/TLS 証明書の発行・管理・デプロイを自動化するサービスです。SSL/TLS 証明書は、Web サイトとブラウザ間の通信を暗号化するために必要なもので、URL が「https://」で始まるサイトはこの証明書を使っています。ACM を使えば、証明書の購入や手動更新の手間なく、安全な通信環境を構築できます。
証明書の発行と検証
ACM で証明書を発行するには、対象のドメイン名を指定してリクエストします。ドメインの所有権を証明するために、DNS 検証またはメール検証を行います。DNS 検証では、指定された CNAME レコードをドメインの DNS に追加するだけで完了します。Route 53 を使っている場合はボタン 1 つで DNS レコードを追加でき、数分で証明書が発行されます。
自動更新の仕組み
ACM が発行した証明書は有効期間が 13 か月で、期限が近づくと自動的に更新されます。DNS 検証を使用している場合、CNAME レコードが残っていれば更新は完全に自動で行われます。手動での更新作業は一切不要です。証明書の期限切れによるサイトダウンという、よくあるトラブルを根本的に防止できます。
はじめかた
ACM コンソールで「証明書のリクエスト」をクリックし、パブリック証明書を選択します。保護したいドメイン名 (例: example.com、*.example.com) を入力し、DNS 検証を選択してリクエストします。DNS に CNAME レコードを追加して検証が完了すると、証明書が発行されます。あとは CloudFront や ALB の設定画面で、発行された証明書を選択するだけです。
Azure・オンプレミスとの比較
AWS の優位点
- パブリック証明書が完全無料で発行でき、商用 CA の年間数万円のコストが不要になる
- DNS 検証を設定すれば証明書の更新が完全自動化され、期限切れによるサイトダウンのリスクがゼロになる
- CloudFront、ALB、API Gateway などの AWS サービスとワンクリックで統合でき、証明書のデプロイ作業が不要
注意点
- ACM で発行するパブリック証明書は無料だが、CloudFront で使用する場合は us-east-1 リージョンで証明書を発行する必要がある
- ACM の証明書は AWS サービス (CloudFront、ALB、API Gateway など) でのみ使用可能で、EC2 インスタンスに直接インストールすることはできない
- ワイルドカード証明書 (*.example.com) を使えば、サブドメインをまとめて 1 枚の証明書でカバーできる
さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。