はじめに
このドキュメントでは、STARTTLSがEHLO Simple Mail Transfer Protocol(SMTP)コマンドで使用でき、サーバがRFC1869に準拠していない場合に、Transfer Layer Security(TLS)ネゴシエーションの失敗を識別する方法について説明します。
背景説明
有効な証明書を使用して、Eメールセキュリティアプライアンス(ESA)でTLSが有効になっている。宛先サーバでTLSが有効になっており、SMTP接続が確立されるとSTARTTLSが表示されます。
STARTTLSが使用可能であるにもかかわらず、ESAから宛先サーバへのTLSネゴシエーションが失敗するのはなぜですか。
ESAはTLSを使用して宛先サーバに接続しようとしますが、ESAのmail_logs/Message Trackingのこのエラーにより、TLSネゴシエーションが失敗します。
Info: DCID xxxxxx STARTTLS command not supported.
RFC1869によると、EHLOに対する最初の応答はehlo-ok-rspであり、ehlo-ok-rspの構文と順序は次のとおりです。
ehlo-ok-rsp ::= "250" domain [ SP greeting ] CR LF
/ ( "250-" domain [ SP greeting ] CR LF
*( "250-" ehlo-line CR LF )
"250" SP ehlo-line CR LF )
RFC構文SMTPカンバセーションの誤った例
220 mail.domain1.com ESMTP Service ready
EHLO ESA.com
250-STARTTLS <--- 250-STARTTLS is before the server greeting.
250-mail.domain1.com <--- This is the 250 destination server greeting.
250-8BITMIME
250-PIPELINING
250-HELP
250-DELIVERBY 300
250 SIZE 30000000
つまり、ehlo-line(この例では250-mail.domain1.com)の前にあるものすべてがグリーティングと見なされます。そのため、ESAは250-STARTTLSコマンドが使用可能で、STARTTLS command not supportedと報告することはないと見なします。 詳細については、https://tools.ietf.org/html/rfc1869 を参照してください。
正しいRFC構文のSMTPカンバセーションの例
220 mail-esa.com ESMTP
EHLO connecting.server.com
250-mail-esa.com <--- This is the 250 destination server greeting.
250-8BITMIME
250-SIZE 33554432
250 STARTTLS <--- STARTTLS is available after the greeting, it's not considered a greeting as per RFC.
関連情報