Amazon Web Services ブログ
DNS を使って AWS Certificate Manager の検証を簡単に
Secure Sockets Layer/Transport Layer Security (SSL/TLS) 証明書はインターネット越しのネットワーク通信を安全にし、Web サイトの身元を確認するのに使われています。アマゾンは証明書を発行する前に、そのドメイン名をあなたが管理している事を検証しなければなりません。今回、あなたが管理しているドメイン名について SSL/TLS 証明書の発行リクエストを AWS Certificate Manager (ACM) にした際に、Domain Name System (DNS) 検証を使えるようになりました。これまで、ACM はEメール検証のみをサポートしており、ドメインの所有者は証明書発行リクエストのつどEメール受け取り、確認して承認する必要がありました。
DNS 検証では、そのドメインをあなたが管理している事を証明するために CNAME レコード を DNS 設定に書き込む必要があります。CNAME レコードの設定後は、DNS レコードが変更されない限り、有効期限切れ前には ACM は自動で DNS 検証した証明書を更新します。Amazon Route 53 で DNS を管理している場合は、ドメインの検証がより簡単になるよう ACM が DNS 設定の更新も行うことができます。このブログ記事では、DNS 検証を使って Web サイトの証明書リクエストを行う方法を紹介します。同等のステップを AWS CLI、AWS API、AWS SDK を使って行うには、AWS Certificate Manager in the AWS CLI Reference や ACM API Reference を御覧ください。
SSL/TLS 証明書を DNS 検証を使ってリクエストする
このセクションでは、インターネットで Web サイトの身元を確認するのに必要な SSL/TLS 証明書を ACM を使って発行するのに必要な 4 ステップを順番に行っていきます。SSL/TLS は、通信における重要データの暗号化、Web サイトの身元を証明する証明書を使った認証、ブラウザ、アプリ、Web サイト間の接続の安全性を実現します。DNS 検証や SSL/TLS 証明書は ACM を通じて無償で提供されます。
ステップ 1: 証明書をリエクストする
始めるにあたって、AWS マネージメントコンソール にログインして、ACM コンソールを開きます。証明書をリクエストするには Get started / 今すぐ始める を選んで下さい。
もしこれまでに ACM で証明書を管理していた場合は、代わりに証明書一覧と新しい証明書をリクエストするボタンが表示されます。新しい証明書をリクエストするには Request a certificate / 証明書のリクエスト を選んで下さい。
Domain name / ドメイン名 のテキストボックスにドメイン名を入力し、Next / 次へ を選んで下さい。この例では、
www.example.com
と入力しています。あなたが管理しているドメイン名でなければいけません。あなたが管理していないドメイン名の証明書をリクエストすることは、AWS サービス条件 に違反することになります。
ステップ 2: 確認方法を選択する
DNS 検証 (DNS validation) では、DNS 設定に CNAME レコードを書き込むことでドメイン名の管理をしている事を検証します。DNS validation / DNS 検証 を選んで、Review / 確認 を選びます。
ステップ 3: リクエストを確認する
リクエストを確認して、証明書をリクスとするには Confirm and request / 確定とリクエスト を選びます。
ステップ 4: リクエストを送信する
ACM がドメイン検証の情報を反映するのに少し経った後、▼ を選択して検証情報の全てを表示させます。
証明書リクエストしたドメイン名を管理していることを検証するために、DNS 設定に追加が必要な CNAME レコードが表示されます。Route 53 以外の DNS サービスを使っていたり、他の AWS アカウントで Route 53 を使っている場合、検証情報から DNS CNAME 情報をコピーするかファイルにエクスポート (Export DNS configuration to a file / DNS 設定をファイルにエクスポート を選びます) して、DNS 設定に書き込みます。DNS レコードを追加・削除する方法については、お使いの DNS サービスを確認指定下さい。DNS に Route 53 をお使いの場合は、Route 53 ドキュメント を確認して下さい。
同じ AWS アカウントの Route 53 でドメインの DNS レコードを管理している場合、ACM で DNS 設定を更新するために Create record in Route 53 / Route 53 でのレコードの作成 を選択して下さい。
DNS 設定を更新した後、Continue / 続行 を選択して ACM の証明書一覧に戻ります。
ACM は全ての証明書の一覧を表示します。リクエストした証明書も表示され、リクエストのステータスを確認することができます。DNS レコードの書き込みを行った後、(TTL設定によりますが) 一般的にレコードが反映されるまで 30 分程度かかり、さらに Amazon が検証して証明書を発行するまで数時間かかります。ACM はこの期間 Validation status / 検証状態 に Pending validation / 検証保留中 と表示します。ACM がドメイン名の検証をした後は、Validation status / 検証状態 に Success / 成功 と表示します。証明書の発行後、証明書のステータスは Issued / 発行済み となります。もし 72 時間経っても ACM が DNS レコードを検証できず証明書を発行できなかった場合は、リクエストはタイムアウトし、検証状態は Timed out / タイムアウト と表示されます。やり直すには、新たにリクエストを作成する必要があります。検証や発行についてトラブルシューティングする手順については、ACM ユーザガイド の トラブルシューティングを参照下さい。(訳注:11/27 現在、日本語のユーザガイドはまだ DNS 検証について反映されてないため、英語版を参照下さい。)
これで ACM の証明書は発行されたので、Web サイトを安全にするのに使用できます。証明書を他の AWS サービスにデプロする方法については、それぞれのドキュメント
Amazon CloudFront、Amazon API Gateway、Application Load Balancers、Classic Load Balancers を参照して下さい。なお、CloudFront で証明書を使用するには 米国東部(バージニア北部)リージョンに証明書が作成されている必要があります。
ACM は証明書が他の AWS サービスで使用されており、CNAME レコードが残っている限り証明書を自動的に更新します。ACM の DNS 検証についてさらに詳しく知るには、ACM FAQ や ACM ドキュメント を御覧ください。
このブログ記事にコメントがる場合、(原文の)記事のコメントセクションに記載して送って下さい。もしこの記事について質問がある場合は ACM forum に新しいスレッドを作成して質問するか AWS サポート
にお問い合わせ下さい。
– Todd (翻訳は SA 辻 義一 が担当しました。原文はこちら)