AWS Certificate Manager
ユーザーガイド (Version 1.0)

DNS を使用したドメインの所有権の検証

Amazon 認証局 (CA) がサイトの証明書を発行する前に、AWS Certificate Manager (ACM) は、ユーザーがリクエストで指定したすべてのドメイン名の所有者または管理者であることを確認する必要があります。証明書をリクエストするときに、E メールによる検証と DNS による検証のいずれかを選択できます。このトピックでは、DNS 検証について説明します。E メールによる検証についての詳細は、「E メールを使用したドメインの所有権の検証」を参照してください。

注記

検証は AWS Certificate Manager (ACM) が適用する証明書にのみ適用されます。ACM では、インポートされた証明書のドメイン所有権は検証しません。

ドメインネームシステム (DNS) は、ネットワークに接続されているリソースのディレクトリサービスです。DNS サーバーは主にインターネット上で、ドメイン名を数値で構成される IP アドレスに変換するために使用されます。IP アドレスによって、コンピュータやその他のデバイスなどリソースを識別して所在を特定できます。DNS サーバー上のデータベースに含まれるドメインレコードは、このような変換時や、その他の機能を活用するときに使用されます。たとえば、A レコードは DNS レコードのタイプの 1 つであり、ドメイン名を IPV4 アドレスにマッピングするときに使用されます。MX レコードは、E メールをルーティングするために使用されます。NS レコードには、ドメインのすべてのネームサーバーが記述されます。

ACM は CNAME (正規名) レコードを使用し、ユーザーがドメインの所有者または管理者であることを検証します。DNS 検証を選択すると、DNS データベースに挿入するための 1 つ以上の CNAME レコードが ACM から提供されます。たとえば、追加の名前として www.example.com を使用して example.com ドメインの証明書をリクエストする場合、ACM によって 2 つの CNAME レコードが作成されます。各レコードは、ユーザーのドメインおよびアカウントに固有のものとして作成され、名前と値が含まれます。この値は、ACM が所有するドメインを指すエイリアスであり、ACM が証明書を自動更新するときに使用されます。CNAME レコードを 1 度のみ DNS データベースに追加します。ACM は、証明書が使用中であり、CNAME レコードが残っている限り、自動的にこの証明書を更新します。また、ドメインが Amazon Route 53 を使用して作成されている場合、ACM によって CNAME レコードを書き込むことができます。

DNS プロバイダーがアンダースコアで始まる CNAME 値をサポートしていない場合は、「DNS 検証の問題のトラブルシューティング」を参照してください。

次の表に、5 つのドメイン名に対する CNAME レコードの例を示します。_x の値は、ACM によって生成されるランダムな長い文字列を意味します。生成される一般的な名前には、_3639ac514e785e898d2646601fa951d5.example.com などがあります。表では最初の 2 つの _x が同じ値になっています。つまり、ワイルドカード名 *.example.com 用に ACM によって作成されるランダム文字列は、基本のドメイン名 example.com 用に作成されるものと同じです。ACM によって example.com および www.example.com に対して別の CNAME レコードが作成されることにも注意してください。

表の右上隅に矢印 () が表示された場合、その表は新しいウィンドウで開くことができます。ウィンドウを閉じるには、右下隅にある閉じるボタン (X) を選択します。

ドメイン名 DNS ゾーン 名前 タイプ
*.example.com example.com _x1.example.com CNAME _x2.acm-validations.aws
example.com example.com _x1.example.com CNAME _x2.acm-validations.aws
www.example.com example.com _x3.www.example.com CNAME _x4.acm-validations.aws
host.example.com example.com _x5.host.example.com CNAME _x6.acm-validations.aws
subdomain.example.com subdomain.example.com _x7.subdomain.example.com CNAME _x8.acm-validations.aws
host.subdomain.example.com subdomain.example.com _x9.host.subdomain.example.com CNAME _x10.acm-validations.aws

DNS 検証は、E メール検証よりも多数のメリットがあります。

  • DNS では、ACM 証明書をリクエストするときに、ドメイン名あたり 1 つの CNAME レコードのみを作成する必要があります。E メール検証では、ドメイン名あたり最大 8 つの E メールメッセージが送信されます。

  • DNS レコードが残っていれば、FQDN 用に追加の ACM 証明書をリクエストできます。つまり、同じドメイン名を持つ複数の証明書を作成できます。新しい CNAME レコードを取得する必要はありません。これを行うことには、いくつか理由があります。たとえば、異なるサブドメインを対象とする新しい証明書を作成する、複数のリージョンで同じ証明書を作成する (認証トークンはどのリージョンでも使用できます)、削除した証明書を置き換えるなどです。

  • ACM は、DNS を使用して検証した ACM 証明書を自動的に更新します。ACM は、証明書が使用中で DNS レコードが残っている限り、各証明書が失効する前にこれを更新します。

  • Route 53 を使用している場合は、ACM によって CNAME レコードが追加され、パブリック DNS レコードを管理できます。DNS プロバイダーとして Route 53 を使用しない場合は、レコードの追加方法について DNS プロバイダーに問い合わせてください。

  • DNS 検証プロセスは、E メール検証プロセスよりも簡単に自動化できます。

  • E メールで検証済みの証明書は、最初の検証日から 825 日目まで更新できます。825 日を経過したら、ドメインの所有者または承認された担当者は、新しい証明書をリクエストする必要があるのに対し、DNS で検証済みの証明書は、無期限に更新できます。

ただし、ドメインの DNS レコードを修正する権限がない場合は、E メール検証が必要となる場合があります。

DNS 検証を使用する

  1. AWS マネジメントコンソールにサインインし、ACM コンソールを https://console.aws.amazon.com/acm/home で開きます。入門者向けページが表示される場合は、[Get Started Now] を選択します。それ以外の場合は、[Request a certificate] を選択します。

  2. [Request a certificate] ページで、ドメイン名を入力します。ドメイン名を入力する場合の詳細については、「パブリック証明書のリクエスト」を参照してください。

  3. ACM 証明書に複数のドメイン名を追加するには、入力した名前の下方に表示されるテキストボックスに別の名前を入力します。

  4. [Next (次)] を選択します。

  5. [DNS validation] を選択します。

  6. [Review and request] を選択します。ドメイン名と検証方法が正しいことを確認します。

  7. [Confirm and request] を選択します。

  8. [Validation] ページで、ドメインの DNS 設定を展開するか、[Export DNS configuration to a file] を選択します。ドメイン情報を展開すると、CNAME レコードの名前と値が ACM に表示されます。ドメイン管理者であることを検証するために、このレコードを DNS データベースに追加する必要があります。

    
					コンソールには、DNS 検証用の CNAME が表示されます。
  9. 次の条件に該当する場合に、[Create record in Route 53] ボタンが表示されます。

    • Route 53 を DNS プロバイダーとして使用しています。

    • Route 53 がホストするゾーンに対する書き込み権限があります。

    • FQDN がまだ検証されていません

    [Create record in Route 53] ボタンが見つからないか無効になっている場合は、「ACM コンソールで [Create record in Route 53 (Route 53 でレコードを作成)] ボタンが表示されない」を参照してください。Route 53 レコードセットの詳細については、「リソースレコードセットの使用」を参照してください。

    注記

    ACM が自動的に Route 53 にレコードを作成するようプログラムによってリクエストすることはできません。ただし、AWS CLI または API コールによって Route 53 にレコードを作成することは可能です。

  10. コンソールまたはエクスポートされたファイルを使用してデータベースにレコードを追加します。DNS レコードの追加の詳細については、「データベースに CNAME を追加する」を参照してください。[Continue] を選択すると、このステップをスキップできます。後でこのステップに戻るには、コンソールで証明書リクエストを開きます。

    注記

    以前の証明書をリクエストしたときに FQDN が検証済みで、同じ FQDN 用に追加の証明書をリクエストしている場合は、別の DNS レコードを追加する必要はありません。

    注記

    ドメイン名が含まれている CNAME レコード (.example.com など) を追加すると、ドメイン名が重複したレコード (.example.com.example.com など) になる場合があります。重複を避けるには、CNAME の一部のみを手動でコピーすることができます。これは _3639ac514e785e898d2646601fa951d5 という形式になります。

  11. DNS 設定を更新した後、[Continue (進む)] を選択します。ACM には、すべての証明書を記載した表が表示されます。リクエストした証明書とそのステータスが記載されています。DNS プロバイダーからレコードの更新が伝達された後、ACM がドメイン名を検証して証明書を発行するまで最大で数時間かかることがあります。この間、ACM には Pending validation (検証保留中) という検証ステータスが表示されます。ドメイン名の検証後、ACM では検証ステータスが成功に変更されます。AWS から証明書が発行された後、ACM では証明書のステータスが Issued (発行済み) に変更されます。

    注記

    CNAME の値を生成してから 72 時間以内に ACM でドメイン名が検証されない場合、ACM では証明書のステータスが Validation timed out (検証タイムアウト) に変更されます。この結果が生じる主な理由として、DNS 設定を ACM によって生成された値で更新しなかったことが考えられます。この問題を修正するには、新しい証明書をリクエストする必要があります。

    
					コンソールには、DNS 検証用の CNAME が表示されます。

データベースに CNAME を追加する

DNS 検証を使用するには、CNAME レコードをドメインの DNS 設定に追加できる必要があります。DNS プロバイダーが Route 53 ではない場合は、レコードを追加する方法をプロバイダーに問い合わせてください。Route 53 がプロバイダーの場合は、ステップ 9 で説明しているように、ACM によって CNAME レコードを作成できます。自分でレコードを追加する場合は、Route 53 開発者ガイドの「リソースレコードセットの編集」を参照してください。

DNS プロバイダーがアンダースコアで始まる CNAME 値をサポートしていない場合は、「DNS 検証の問題のトラブルシューティング」を参照してください。

注記

DNS 設定の編集権限がない場合は、E メール検証を使用する必要があります。

データベースから CNAME を削除する

証明書は使用中で、ACM によって作成された CNAME レコードが DNS データベースに残っている場合、ACM によって証明書が自動的に更新されます。自動更新を停止するには、関連付けられている AWS サービスから証明書を削除するか、CNAME レコードを削除します。DNS プロバイダーが Route 53 ではない場合は、レコードを削除する方法をプロバイダーに問い合わせてください。Route 53 がプロバイダーの場合は、Route 53 開発者ガイドの「リソースレコードセットの削除」を参照してください。証明書のマネージド型更新の詳細については、「ACM の Amazon が発行する証明書のマネージド型更新」を参照してください。