Introduction
This document describes how to identify Transfer Layer Security (TLS) negotiation failure when STARTTLS is available within the EHLO Simple Mail Transfer Protocol (SMTP) commands and the server does not conform to RFC1869.
Background Information
TLS is enabled on Email Security Appliance (ESA) with a valid certificate. TLS is enabled on the destination server and STARTTLS is seen when an SMTP connection is established.
Why does TLS negotiation from the ESA to a destination server fail despite STARTTLS being available?
ESA tries to connect to destination server with the use of TLS, however, TLS negotiation fails with this error on the ESA's mail_logs/Message Tracking.
Info: DCID xxxxxx STARTTLS command not supported.
As per RFC1869, the first response to EHLO should be ehlo-ok-rsp and ehlo-ok-rsp has this syntax and order:
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 )
Incorrect RFC Syntax SMTP Conversation Example
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
It means that all there is before the ehlo-line (250-mail.domain1.com, in this example) is considered as greeting. So, the ESA will not consider the 250-STARTTLS command available and report STARTTLS command not supported. Refer to https://tools.ietf.org/html/rfc1869 for more details.
Correct RFC Syntax SMTP Conversation Example
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.
Related Information