Amazon SES SMTP エンドポイントへの接続 - Amazon Simple Email Service Classic

Amazon SES Classic のユーザーガイドです。更新プログラムや新機能は、推奨している新しい Amazon SES デベロッパーガイドに記述されています。

Amazon SES SMTP エンドポイントへの接続

Amazon SES SMTP インターフェイスを使用して E メールを送信するには、SMTP エンドポイントに接続します。Amazon SES SMTP エンドポイントの完全なリストについては、AWS 全般のリファレンスの「Amazon Simple Email サービスエンドポイントとクォータ」を参照してください。

Amazon SES SMTP エンドポイントでは、すべての接続が Transport Layer Security(TLS)を使用して暗号化されている必要があります。(TLS は、以前のプロトコルの名前である「SSL」と呼ばれることが多いことに注意してください。) Amazon SES は、TLS で暗号化された接続を確立するために、STARTTLS および TLS ラッパーという 2 つのメカニズムをサポートしています。ソフトウェアが STARTTLS および TLS ラッパーをサポートしているかどうかは、ソフトウェアのドキュメントを参照してください。

注記

Amazon Elastic Compute Cloud (Amazon EC2) では、デフォルトでポート 25 経由での E メールトラフィックを制限しています。Amazon EC2 から SMTP エンドポイントを介して E メールを送信する際のタイムアウトを回避するには、これらの制限を解除するようリクエストします。詳細については、AWS ナレッジセンターの「Amazon EC2 インスタンスまたは AWS Lambda 関数 からポート 25 の制限を解除する方法」を参照してください。

または、別のポートを使用するか、 Amazon VPC エンドポイントを使用することもできます。

STARTTLS

STARTTLS とは、暗号化されていない接続を暗号化された接続にアップグレードする方法です。STARTTLS には、様々なプロトコルに対応したバージョンがあります。SMTP バージョンは、「RFC 3207」に定義されています。

STARTTLS 接続を設定する場合、SMTP クライアントは、ポート 25、587、または 2587 で Amazon SES SMTP エンドポイントに接続し、EHLO コマンドを発行します。次に、サーバーから STARTTLS SMTP 拡張機能をサポートしているという通知が来るのを待ちます。通知を受けたクライアントは、STARTTLS コマンドを発行し、TLS ネゴシエーションを開始します。ネゴシエーションが完了すると、クライアントが暗号化された新しい接続で EHLO コマンドを発行し、SMTP セッションが正常に進行します。

TLS ラッパー

TLS ラッパー(SMTPS またはハンドシェイクプロトコルとも呼ばれる)は、最初に暗号化されていない接続を確立するのではなく、最初から暗号化された接続を開始する方法です。TLS ラッパーを使用する場合、Amazon SES SMTP エンドポイントは TLS ネゴシエーションを実行しません。TLS を使用してエンドポイントに接続し、通信全体で TLS の使用を継続するのはクライアントの役割です。TLS ラッパーは古いプロトコルですが、数多くのクライアントが今もサポートしています。

TLS ラッパー接続を設定する場合、SMTP クライアントは、Amazon SES SMTP エンドポイントにポート 465 または 2465 で接続します。サーバーが自身の証明書を提示すると、クライアントが EHLO コマンドを発行し、SMTP セッションが正常に進行します。