Amazon Simple Email Service
開発者ガイド

Amazon SES E メールアドレスおよびドメインの認証の問題

Amazon SES で E メールアドレスまたはドメインを認証するには、Amazon SES コンソールまたは Amazon SES API を使用してプロセスを開始します。このセクションには、認証プロセスに関する問題の解決に役立つ情報が含まれます。

E メール認証のよくある問題

  • 確認 E メールが届かないAmazon SES での E メールアドレスの検証 の手順を完了しても数分以内に確認 E メールが届かない場合は、以下のトラブルシューティングタスクを実行します。

    • 認証しようとしている E メールアドレスのスパムまたは迷惑メールフォルダを確認します。

    • 認証しようとしている E メールアドレスで E メールを受信できることを確かめます。別の E メールアドレス (個人の E メールアドレスなど) を使用して、認証しようとしているアドレスに、テスト E メールを送信します。

    • Amazon SES コンソールの認証されたアドレスのリスト を確認します。認証しようとしている E メールアドレスに間違いがないことを確認します。

ドメインの確認に関する一般的な問題

Amazon SES でのドメインの検証」の手順を使用してドメインを確認しようとしたときに問題が発生した場合は、次に示す考えられる原因と解決策を確認してください。

  • 自分が所有していないドメインを確認しようとしています – 自分が所有していないドメインを確認することはできません。たとえば、gmail.com ドメインのアドレスから Amazon SES を介して E メールを送信する場合は E メールアドレスを個別に確認する必要があります。gmail.com ドメイン全体を確認することはできません。

  • DNS プロバイダーにより、TXT レコード名にアンダースコアを含めることが許可されない – 一部の DNS プロバイダーは、ドメインの DNS レコード名にアンダースコア文字を含めることを許可していません。これがお客様のプロバイダーに当てはまる場合、TXT レコード名から _amazonses を削除できます。

  • DNS プロバイダーによって TXT レコードの末尾にドメイン名が追加された – 一部の DNS プロバイダーは、ドメインの名前を自動的に TXT レコードの属性名に追加します。たとえば、属性名が _amazonses.example.com のレコードを作成した場合、プロバイダーはドメイン名を追加して _amazonses.example.com.example.com となります)。ドメイン名の重複を避けるために、TXT レコードの作成時にドメイン名の末尾にピリオドを追加します。この手順では、ドメイン名を TXT レコードに追加する必要はないことを DNS プロバイダーに伝えます。

  • DNS プロバイダーにより、DNS レコード値が変更された – プロバイダーによっては、小文字のみを使用するように DNS レコード値が自動的に変更されます。Amazon SES は、属性値がドメイン検証プロセスを開始したときに Amazon SES が指定した値と正確に一致する検証レコードを検出するときにのみドメインを認証します。ドメインの DNS プロバイダーが小文字のみを使用するように TXT レコード値を変更した場合、追加のサポートを DNS プロバイダーまでお問い合わせください。

  • 同じドメインを複数回確認したい – 異なるリージョンで送信しようとしている場合や、同じリージョンの同じドメインの複数の AWS アカウントから送信しようとしている場合は、複数回ドメインを確認する必要があります。DNS プロバイダーが同じ属性名の複数の TXT レコードを持つことを許可しない場合、2 つのドメインを確認できることがあります。DNS プロバイダーによって許可される場合、同じ TXT レコードに複数の属性値を割り当てることができます。たとえば、DNS が Amazon Route 53 によって管理されている場合、以下の手順を実行して、同じ TXT レコードに対して複数の値をセットアップできます。

    1. Route 53 コンソールで、最初のリージョンのドメインを検証したときに作成した TXT レコードを選択します。

    2. [Value (値)] ボックスで、既存の属性値の末尾に移動し、Enter キーを押します。

    3. 追加のリージョンの属性値を追加し、レコードセットを保存します。

    お客様の DNS プロバイダーでは、同じ TXT レコードに複数の値を割り当てることができない場合、TXT レコードの属性名の _amazonses で 1 回、属性名から削除された _amazonses で再度ドメインを確認することができます。このソリューションの欠点は、同じドメインを 2 回しか確認できないことです。

ドメインの確認に関する設定を確認する方法

次の手順を使用して、Amazon SES ドメイン確認 TXT レコードが適切に DNS サーバーに発行されたことを確認できます。この手順では、Windows および Linux で使用できる nslookup ツールを使用します。Linux では、dig を使用することもできます。

これらの手順に示すコマンドは、Windows 7 で実行されています。使用されているサンプルのドメインは、ses-example.com です。

この手順では、最初にドメインにサービスを提供する DNS サーバーを見つけます。次に、これらのサーバーに対して、TXT レコードを表示するためのクエリを実行します。ドメインにサービスを提供する DNS サーバーに対してクエリを実行する理由は、これらのサーバーには他の DNS サーバーに伝達されるまでに時間のかかるドメインの最新情報が格納されているためです。

ドメイン確認 TXT レコードが DNS サーバーに公開されていることを確認するには

  1. 次のステップを実行して、ドメインのネームサーバーを見つけます。

    1. コマンドラインに移動します。Windows 7 でコマンドラインに移動するには、[Start] を選択し、cmd と入力します。Linux ベースのオペレーティングシステムでは、ターミナルウィンドウを開きます。

    2. コマンドプロンプトで、次のように入力します。ここで、<domain> はドメインを示します。これにより、ドメインにサービスを提供しているすべてのネームサーバーが表示されます。

      nslookup -type=NS <domain>

      ドメインが ses-example.com の場合、このコマンドは次のようになります。

      nslookup -type=NS ses-example.com

      コマンドの出力に、ドメインにサービスを提供しているネームサーバーのリストが表示されます。次のステップでは、これらのサーバーの 1 つに対してクエリを実行します。

  2. 次のステップを実行して、TXT レコードが適切に発行されていることを確認します。

    1. コマンドプロンプトで、次のように入力します。ここで、<domain> はドメインを示し、<name server> はステップ 1 で見つけたネームサーバーの 1 つを示します。

      nslookup -type=TXT _amazonses.<domain> <name server>

      ses-example.com の例で、ステップ 1 で見つけたネームサーバーが ns1.name-server.net の場合は、次のように入力します。

      nslookup -type=TXT _amazonses.ses-example.com ns1.name-server.net
    2. コマンドの出力で、text = に続く文字列が Amazon SES コンソールのアイデンティティリストでドメインを選択すると表示される TXT 値と一致することを確認します。

      この例では、_amazonses.ses-example.com の下で値が fmxqxT/icOYx4aA/bEUrDPMeax9/s3frblS+niixmqk= の TXT レコードを探しています。レコードが正しく発行されている場合、次のようなコマンド出力が得られます。

      _amazonses.ses-example.com text = "fmxqxT/icOYx4aA/bEUrDPMeax9/s3frblS+niixmqk="