翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon SES SMTP の問題
このセクションでは、SMTP (Amazon SES Simple Mail Transfer Protocol) インターフェイスを使用した E メールの送信に関連するいくつかの一般的な問題の解決策について説明します。また、Amazon SES から返される SMTP 応答コードも一覧表示します。
Amazon SES SMTP インターフェイス経由の E メール送信の詳細については、「Amazon SESSMTPインターフェイスを使用して E メールを送信する」を参照してください。
-
Amazon SES SMTP エンドポイントに接続できない。
Amazon SES SMTP エンドポイントへの接続の問題は、ほとんどの場合以下の問題が関係しています。
-
認証情報が正しくない — SMTP エンドポイントへの接続に使用する認証情報は、 AWS 認証情報とは異なります。SMTP 認証情報を取得する方法については、「Amazon SESSMTP認証情報の取得」を参照してください。認証情報の詳細については、「Amazon SES 認証情報の種類」を参照してください。
-
ネットワークまたはファイアウォールの問題 - ネットワークにより、E メールを送信しようとしているポートでのアウトバウンド接続がブロックされている可能性があります。ローカルネットワークが原因で接続の問題が発生しているかどうかを確認するには、コマンドラインに次のコマンドを入力します。
は、使用するポート (通常は 465、587、2465 または 2587) に置き換えてください。port
telnet email-smtp.us-west-2.amazonaws.com
port
このコマンドを使用して SMTP サーバーに接続でき、さらに TLS ラッパーまたは STARTTLS を使用して Amazon SES に接続しようとしている場合は、コマンドラインを使用して Amazon SESSMTPインターフェイスへの接続をテストする に示されている手順を実行してください。
telnet
またはopenssl
を使用して Amazon SES SMTP エンドポイントに接続できない場合は、ネットワークのどこか (ファイアウォールなど) で、使用しようとしているポートでのアウトバウンド接続がブロックされているということです。ネットワーク管理者と協力して、問題を診断および解決してください。
-
-
ポート 25 を使用して Amazon EC2 インスタンスから Amazon SES に送信しているときに、タイムアウトエラーを受信する。
Amazon EC2 はデフォルトでポート 25 を制限します。これらの制限を削除するためには、E メール送信制限解除申請
に Amazon EC2 リクエストを送信します。制限されないポート 465 または 587 を使用して Amazon SES に接続することもできます。 -
ネットワークエラーが原因で E メールのドロップが発生している。
アプリケーションが Amazon SES SMTP エンドポイントに接続するときに再試行ロジックを使用していること、およびアプリケーションがネットワークエラーを検出しメッセージ配信を再試行できることを確認します。SMTP は冗長プロトコルで、このプロトコルを使用して E メールを送信する場合は複数のネットワークラウンドトリップが必要になります。SMTP の性質上、ネットワークエラーの可能性は高くなります。
-
SMTP エンドポイントとの接続が失われる。
ほとんどの場合、接続の切断は以下の問題によって発生します。
-
MTU サイズ - タイムアウトエラーメッセージが表示された場合、Amazon SES SMTP インターフェイスとの接続に使用しているコンピュータのネットワークインターフェイスの最大送信単位 (MTU) が大きすぎる可能性があります。この問題を解決するには、そのコンピュータの MTU サイズを 1500 バイトに設定します。
Windows、Linux、macOS の各オペレーティングシステムで MTU サイズを設定する方法の詳細については、Amazon Redshift 管理ガイドの「クライアントでクエリがハングして、クラスターに到達しない場合がある」を参照してください。
Amazon EC2 インスタンスの MTU サイズの設定の詳細については、「Amazon EC2 ユーザーガイド」のEC2 インスタンスのネットワーク最大送信単位 (MTU)Amazon EC2」を参照してください。
-
存続時間の長い接続 - Amazon SES SMTP エンドポイントは、Elastic Load Balancer (ELB) の背後の複数の Amazon EC2 インスタンスのフリートで実行されます。システムが up-to-date で耐障害性を確保するために、アクティブな Amazon EC2 インスタンスは定期的に終了され、新しいインスタンスに置き換えられます。アプリケーションは ELB を介して Amazon EC2 インスタンスに接続するため、 Amazon EC2 インスタンスが終了すると接続が無効になります。単一の SMTP 接続を使用して所定の数のメッセージを配信した後、または SMTP 接続がある程度の時間にわたってアクティブであった場合は、新しい SMTP 接続を確立する必要があります。アプリケーションがホストされている場所やアプリケーションがどのように E メールを Amazon SES に送信するかに応じて、いろいろな値を試しながら適切なしきい値を見つける必要があります。
-
-
ネットワークで IP アドレスを許可リストに登録できるように、Amazon SES の SMTP メールサーバーの IP アドレスを知りたい。
Amazon SES SMTP エンドポイントの IP アドレスは、ロードバランサーの背後に存在します。その結果、これらの IP アドレスは頻繁に変更されます。Amazon SES エンドポイントのすべての IP アドレスの明確なリストを提供することはできません。個々の IP アドレスを許可リストに登録せずに、
amazonses.com
ドメインを許可リストに登録することをお勧めします。
Amazon SES から返される SMTP 応答コード
このセクションでは、Amazon SES SMTP インターフェイスから返される応答コードを一覧表示します。
400 エラーを受け取った SMTP リクエストは、再試行する必要があります。待機時間を少しずつ増やしながらリクエストを再試行するシステムを実装することをお勧めします (たとえば、待機時間を 5 秒、10 秒、30 秒と増やしながら再試行します)。 3 回目の再試行が失敗した場合は、20 分待ってからプロセスを繰り返してください。 段階的な再試行ポリシーを使用する実装例については、 AWS メッセージングとターゲティングブログ で「"Throttling – Maximum sending rate exceeded (スロットリング – 最大送信レートの超過)" エラーの対処法
注記
AWS SDKs再試行ロジックを自動的に実装しますが、SMTP の代わりに HTTPS インターフェイスを使用します。
500 エラーが発生した場合は、もう一度リクエストを送信する前に、リクエストを修正して問題を修正する必要があります。例えば、 AWS 認証情報が無効な場合は、リクエストを再度送信する前に、正しい認証情報を使用するようにアプリケーションを更新する必要があります。
説明 | Response Code (レスポンスコード) | 詳細情報 |
---|---|---|
認証に成功 |
|
SMTP クライアントは SMTP サーバーに正常に接続してサインインしました。 |
正常に配信 |
|
|
Service unavailable |
|
SMTP サーバーへの接続が現在多すぎるため、Amazon SES はリクエストを処理できません。 |
ローカル処理エラー |
|
Amazon SES はリクエストを処理できませんでした。リクエストを処理できないという問題がある可能性があります。 |
タイムアウト |
|
リクエストの間の経過時間が長すぎるため、SMTP サーバーが接続を閉じました。 |
日次送信クォータの超過 |
|
24 時間の期間に送信することが Amazon SES によって許可されたメッセージの最大数を超えました。詳細については、「Amazon SES 送信制限の管理」を参照してください。 |
最大送信レートの超過 |
|
Amazon SES によって許可された、1 秒あたりに送信できる E メールの最大数を超えました。詳細については、「Amazon SES 送信制限の管理」を参照してください。 |
SMTP 認証情報を検証するときの Amazon SES の問題 |
|
この問題の原因となる可能性のある問題には、以下が含まれます (ただし、これらに限定されません)。
|
リクエストの受信に関する問題 |
|
Amazon SES はリクエストを受信できませんでした。 その結果、メッセージは送信されませんでした。 |
認証情報の誤り |
|
E メールの送信に使用するアプリケーションは、Amazon SES SMTP インターフェイスに接続したときに認証を試みませんでした。 |
無効な認証情報 |
|
E メールを送信するのに使用するアプリケーションは Amazon SES に正しい SMTP 認証情報を提供しませんでした。SMTP 認証情報は、 AWS 認証情報と同じではないことに注意してください。詳細については、「Amazon SESSMTP認証情報の取得」を参照してください。 |
Amazon SES にサブスクライブされないアカウント |
|
SMTP 認証情報を所有 AWS アカウント する は、Amazon SES にサインアップされません。 |
メッセージが長すぎます |
|
送信しようとしているメッセージのサイズが最大メッセージサイズを超えています。 |
Amazon SES にサブスクライブされないアカウント |
|
SMTP 認証情報を所有 AWS アカウント する は、Amazon SES にサインアップされません。 |
MAIL FROM 構文エラー |
|
SMTP メッセージの MAIL FROM 部分に構文エラーがあります。正しい形式に従っていることを確認し、電子メールアドレスを「<>」で囲むことを忘れないでください。 |
RCPT TO 構文エラー |
|
SMTP メッセージの RCPT TO 部分に構文エラーがあります。正しい形式に従っていることを確認し、電子メールアドレスを「<>」で囲むことを忘れないでください。 |
Amazon SES SMTP エンドポイントを呼び出す許可が与えられていないユーザー |
|
SMTP 認証情報を所有するユーザーの AWS Identity and Access Management (IAM) ポリシーまたは Amazon SES 送信承認ポリシーは、Amazon SES SMTP エンドポイントを呼び出すことはできません。 |
未確認の E メールアドレス |
|
Amazon SES アカウントからのメール送信が確認されていないメールアドレスまたはドメインからメールを送信しようとしています。 このエラーは、「From」、「Source」、「Sender」、または「Return-Path」のアドレスに該当する場合があります。アカウントがサンドボックスにまだある場合は、Amazon SES メールボックスシミュレーターから提供されているアドレスを除く、すべての受信者のアドレスも確認する必要があります。Amazon SES が検証チェックに失敗したすべての ID を表示できない場合、エラーメッセージは 3 つのピリオド (...) で終わります。 注記Amazon SES には複数の にエンドポイントがあり、E AWS リージョンメールアドレスの検証ステータスは ごとに異なります AWS リージョン。 AWS リージョン 使用する で送信者ごとに検証プロセスを完了する必要があります。 |
注記
このページのトラブルシューティングに記載のない SMTP の問題については、[お問い合わせ]