SMTP (Simple Mail Transfer Protocol) は、電子メール送信用の通信プロトコルです。STARTTLS は、SMTP に基づいて、暗号化された通信に別のポートを使用する代わりに、プレーン テキスト接続を暗号化された(TLS または SSL)接続にアップグレードします。
STARTTLS のプロセス フロー
STARTTLS のプロセス フローは次のとおりです。
![](images/GUID-669E6114-5D33-4FC4-8584-768B4889A41B-high.png)
STARTTLS プロセスは TCP ハンドシェイク後に開始されます。
サーバは、220 Ready を識別して、E メール クライアントが通信を続行できることを確認します。
クライアントはサーバ EHLO を送信して、クライアントが拡張 SMTP を使用することをサーバに通知します。
サーバは 250 STARTTLS をクライアントに送信して、STARTTLS が受け入れられるかどうかを確認します。
クライアントは STARTTLS をサーバに送信し、STARTTLS を使用できることを通知します。
SSL/TLS を起動できる場合、サーバは 220 GO Head をクライアントに送信します。
クライアントはサーバで SSL/TLS を開始します。
SSL/TLS が完了すると、E メール メッセージが暗号化されます。
レイヤー 4 の SSL の DataScript イベント
新しい DataScript イベント:
イベント名:VS_DATASCRIPT_EVT_TCP_CLIENT_ACCEPT
機能:TCP ハンドシェイクが完了した後に発生します。
新しい DataScript API:
API 名 |
イベント |
説明 |
機能 |
---|---|---|---|
avi.ssl.disable_ssl() |
VS_DATASCRIPT_EVT_TCP_CLIENT_ACCEPT |
引数はありません |
TCP ハンドシェイク後に SSL を無効化します |
avi.ssl.enable_ssl() |
VS_DATASCRIPT_EVT_L4_REQUEST |
引数はありません |
トラフィック中に SSL を有効にします |
トラフィック フロー
トラフィック フローは次のとおりです。
![](images/GUID-E0501C4B-AF96-4D16-AE73-100B0B75FB64-high.png)
トラフィック フロー プロセスは次のとおりです。
NSX Advanced Load Balancer は、クライアントとの TCP ハンドシェイク後にバックエンド サーバへの接続を作成します。
NSX Advanced Load Balancer は、クライアントとサーバ間でプロキシ メッセージを送信します。
クライアントは、拡張 SMTP の使用について、サーバにいつでも
EHLO
を送信できます(TCP ハンドシェイクの直後または一部のデータの送信後)。EHLO
を受信すると、サーバはそのサービスをアドバタイズします。STARTTLS
がない場合、システムはサービスの 1 つとして250 STARTTLS
を追加します。クライアントは、
TLS
の要求をSTARTTLS
に送信できます。NSX Advanced Load Balancer は、
220
を使用してクライアントに応答し、TLS ネゴシエーションを開始します。SSL/TLS
ネゴシエーションの後、クライアントは暗号化されたメールを NSX Advanced Load Balancer に送信します。