簡介
本文檔介紹在EHLO簡單郵件傳輸協定(SMTP)命令中提供STARTTLS時,如何辨識傳輸層安全(TLS)協商失敗,以及伺服器不符合RFC1869的情況。
背景資訊
TLS已在具有有效證書的郵件安全裝置(ESA)上啟用。目標伺服器上啟用了TLS,並且在建立SMTP連線時顯示STARTTLS。
為什麼從ESA到目的伺服器的TLS協商會失敗,儘管STARTTLS可用?
ESA嘗試使用TLS連線到目標伺服器,但是TLS協商失敗,並在ESA的mail_logs/Message Tracking中發現此錯誤。
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命令不受支援。 有關詳細資訊,請參閱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.
相關資訊