Internet-Draft | Secure SMTP/TLS SRV Announcement | October 2024 |
Nurpmeso | Expires 4 May 2025 | [Page] |
It is described how DNS (RFC 1035) SRV (RFC 2782) records announce availability of TLS (RFC 8446) enabled Secure SMTP (RFC 3207, RFC 5321).¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 4 May 2025.¶
Copyright (c) 2024 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
[RFC2782] defines a widely adopted DNS-based service discovery protocol. [RFC6186] is a specification of [RFC2782] SRV records for the email protocols IMAP[RFC9051], POP3[RFC1939], and SUBMISSION[RFC6409]. SMTP[RFC5321] connections to MTAs ([RFC5598], section 4.3.2) are yet excluded from their share on the widely supported SRV record, and the email architecture security considerations ([RFC5598], section 6.1) do not yet cover explorability of transport security. The SMTP/TLS SRV announcement can be queried before a connection to a discovered SMTP MX server is established; it MAY be used to distribute SMTP load via the SRV Priority and Weight mechanism further.¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
The term "Implicit TLS" refers to the automatic negotiation of TLS whenever a TCP connection is made on a particular TCP port that is used exclusively by that server for TLS connections. The term "Implicit TLS" is intended to contrast with the use of the STARTTLS command in SMTP that is used by the client and the server to explicitly negotiate TLS on an established cleartext TCP connection.¶
The service name for TLS[RFC8446] enabled Secure[RFC3207] SMTP[RFC5321] is smtps, the resulting DNS label _smtps.¶
Here are two examples, the first announcing to support the STARTTLS SMTP service extension, the second specifying the port number 26 to indicate an additional Implicit TLS port.¶
_smtps._tcp SRV 0 1 0 mail1.example.com. _smtps._tcp SRV 0 1 26 mail2.example.com.¶
IANA is not expected to add a dedicated port for "Implicit TLS SMTP". Shall it consider otherwise the author suggests port 26.¶
This specification can be used to avoid downgrade attacks on the opportunistic approach of STARTTLS, accomplished via the mechanism used for many other IETF standardized protocols, most notably [RFC2782] (IMAP, POP3, SUBMISSION). With its Implicit TLS capability it grants the SMTP protocol the same level of confidentiality through TLS[RFC8446] as is already standardized for the other email protocols; the fewer necessary packet roundtrips aid, too. The security of DNS[RFC1035] is out of scope for this specification, but DNSSEC[RFC4033][RFC4034][RFC4035] and secure DNS transport[RFC7858][RFC8094][RFC8310][RFC9250] etc exists.¶
Plenty of methods have been standardized by the IETF to perform service TLS capability discovery for SMTP. They have in common that they represent SMTP specific solutions to a problem that most, if not all other protocols address via the means this document thus reiterates for SMTP. They represent further development effort and error surfaces. They also impose increased administration effort, and, due to this, are inaccessible to a large number, if not the majority, of private email server operators: either through additional costs, the impossibility to set up a dedicated name server, if so required, and, also as a superset of the former, restrictive web interfaces that support only a minimal set of DNS[RFC1035] resource record types. Finally they, especially looking forward, disallow the business model where a provider manages DNSSEC[RFC4033][RFC4034][RFC4035] for basic user DNS entries, created via some kind of web interface.¶
There is for example MTA-STS[RFC8461] which requires SMTP operators to install and maintain a HTTP protocol server, accessible on the usual HTTP/S ports and the same domain as the email service, and subject to the now usual web server and DNS (traffic) attacks. Dependent on the software this may require non-trivial and error prone path access policy server rules.¶
Another example are the newer SVCB[RFC9460] DNS resource records. They support a plethora of additional options, and one could say that, with hindsight to TLS Encrypted Client Hello[I-D.ietf-tls-svcb-ech], using SVCB would reduce DNS traffic. SVCB, however, just like many other IETF designed DNS RR types, is often not available in web interfaces providers make available to normal end users. Furthermore, and that is the authors opinion, they are problematic, especially regarding SMTP, in that they again would represent a special approach for SMTP compared to other email protocols, and that includes SUBMISSION[RFC6409] which effectively is identical to SMTP. (The author believes email should be as easy as possible to setup and use for end users.)¶
Also in the authors opinion we now start mixing the model, view, controller paradigm with SVCB. Which leads to DANE for SMTP[RFC7672]. Unfortunately DNSSEC[RFC4033][RFC4034][RFC4035] is still consciously unsupported by major players as of today, and provider web interfaces do often not allow users placement of the necessary DANE resource records in addition, as of the time of this writing. However, discovering a (TLS enabled) email service via SRV records, thereafter checking for applicability of DNS-Based Authentication of Named Entities (DANE)[RFC6698], possibly even Using Raw Public Keys in Transport Layer Security (TLS)[RFC7250] would be a bright future that addresses a lot of today's issues.¶
Thanks to Jan Ingvoldstad for remarks on the missing rationale.¶