Internet-Draft Secure SMTP/TLS SRV Announcement October 2024
Nurpmeso Expires 4 May 2025 [Page]
Workgroup:
Internet Engineering Task Force
Internet-Draft:
draft-nurpmeso-smtp-tls-srv-01
Updates:
3207 5321 5598 (if approved)
Published:
Intended Status:
Informational
Expires:
Author:
S. Nurpmeso, Ed.

Secure SMTP/TLS SRV Announcement

Abstract

It is described how DNS (RFC 1035) SRV (RFC 2782) records announce availability of TLS (RFC 8446) enabled Secure SMTP (RFC 3207, RFC 5321).

Status of This Memo

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.

Table of Contents

1. Introduction

[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.

1.1. Requirements Language

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.

2. SMTP/TLS SRV Service Name

The service name for TLS[RFC8446] enabled Secure[RFC3207] SMTP[RFC5321] is smtps, the resulting DNS label _smtps.

STARTTLS
Whenever a domain publishes an according DNS SRV[RFC2782] resource record it asserts availability of Secure SMTP, that is, of the STARTTLS[RFC3207] SMTP service extension on the normal SMTP[RFC5321] port (specified by IANA as port 25). The port number MUST be given as 0.
Implicit TLS
If the port number of the published SRV resource record is not 0, then the domain announces to support Implicit TLS on the given port in addition to STARTTLS on the normal SMTP port. (Specifying the IANA SMTP port results in a non-compliant service, and SHOULD NOT be used on the internet.) The STARTTLS[RFC3207] extension command MUST NOT be used during connections on an Implicit TLS port.

3. Example: service record

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.

4. IANA Considerations

IANA is not expected to add a dedicated port for "Implicit TLS SMTP". Shall it consider otherwise the author suggests port 26.

5. Security Considerations

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.

6. References

6.1. Normative References

[RFC2782]
Gulbrandsen, A., Vixie, P., and L. Esibov, "A DNS RR for specifying the location of services (DNS SRV)", RFC 2782, DOI 10.17487/RFC2782, , <https://www.rfc-editor.org/info/rfc2782>.
[RFC3207]
Hoffman, P., "SMTP Service Extension for Secure SMTP over Transport Layer Security", RFC 3207, DOI 10.17487/RFC3207, , <https://www.rfc-editor.org/info/rfc3207>.
[RFC5321]
Klensin, J., "Simple Mail Transfer Protocol", RFC 5321, DOI 10.17487/RFC5321, , <https://www.rfc-editor.org/info/rfc5321>.

6.2. Informative References

[RFC1035]
Mockapetris, P., "Domain names - implementation and specification", STD 13, RFC 1035, DOI 10.17487/RFC1035, , <https://www.rfc-editor.org/info/rfc1035>.
[RFC1939]
Myers, J. and M. Rose, "Post Office Protocol - Version 3", STD 53, RFC 1939, DOI 10.17487/RFC1939, , <https://www.rfc-editor.org/info/rfc1939>.
[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/info/rfc2119>.
[RFC4033]
Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "DNS Security Introduction and Requirements", RFC 4033, DOI 10.17487/RFC4033, , <https://www.rfc-editor.org/info/rfc4033>.
[RFC4034]
Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "Resource Records for the DNS Security Extensions", RFC 4034, DOI 10.17487/RFC4034, , <https://www.rfc-editor.org/info/rfc4034>.
[RFC4035]
Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "Protocol Modifications for the DNS Security Extensions", RFC 4035, DOI 10.17487/RFC4035, , <https://www.rfc-editor.org/info/rfc4035>.
[RFC5598]
Crocker, D., "Internet Mail Architecture", RFC 5598, DOI 10.17487/RFC5598, , <https://www.rfc-editor.org/info/rfc5598>.
[RFC6186]
Daboo, C., "Use of SRV Records for Locating Email Submission/Access Services", RFC 6186, DOI 10.17487/RFC6186, , <https://www.rfc-editor.org/info/rfc6186>.
[RFC6409]
Gellens, R. and J. Klensin, "Message Submission for Mail", STD 72, RFC 6409, DOI 10.17487/RFC6409, , <https://www.rfc-editor.org/info/rfc6409>.
[RFC6698]
Hoffman, P. and J. Schlyter, "The DNS-Based Authentication of Named Entities (DANE) Transport Layer Security (TLS) Protocol: TLSA", RFC 6698, DOI 10.17487/RFC6698, , <https://www.rfc-editor.org/info/rfc6698>.
[RFC7250]
Wouters, P., Ed., Tschofenig, H., Ed., Gilmore, J., Weiler, S., and T. Kivinen, "Using Raw Public Keys in Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)", RFC 7250, DOI 10.17487/RFC7250, , <https://www.rfc-editor.org/info/rfc7250>.
[RFC7672]
Dukhovni, V. and W. Hardaker, "SMTP Security via Opportunistic DNS-Based Authentication of Named Entities (DANE) Transport Layer Security (TLS)", RFC 7672, DOI 10.17487/RFC7672, , <https://www.rfc-editor.org/info/rfc7672>.
[RFC7858]
Hu, Z., Zhu, L., Heidemann, J., Mankin, A., Wessels, D., and P. Hoffman, "Specification for DNS over Transport Layer Security (TLS)", RFC 7858, DOI 10.17487/RFC7858, , <https://www.rfc-editor.org/info/rfc7858>.
[RFC8094]
Reddy, T., Wing, D., and P. Patil, "DNS over Datagram Transport Layer Security (DTLS)", RFC 8094, DOI 10.17487/RFC8094, , <https://www.rfc-editor.org/info/rfc8094>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/info/rfc8174>.
[RFC8310]
Dickinson, S., Gillmor, D., and T. Reddy, "Usage Profiles for DNS over TLS and DNS over DTLS", RFC 8310, DOI 10.17487/RFC8310, , <https://www.rfc-editor.org/info/rfc8310>.
[RFC8446]
Rescorla, E., "The Transport Layer Security (TLS) Protocol Version 1.3", RFC 8446, DOI 10.17487/RFC8446, , <https://www.rfc-editor.org/info/rfc8446>.
[RFC8461]
Margolis, D., Risher, M., Ramakrishnan, B., Brotman, A., and J. Jones, "SMTP MTA Strict Transport Security (MTA-STS)", RFC 8461, DOI 10.17487/RFC8461, , <https://www.rfc-editor.org/info/rfc8461>.
[RFC9051]
Melnikov, A., Ed. and B. Leiba, Ed., "Internet Message Access Protocol (IMAP) - Version 4rev2", RFC 9051, DOI 10.17487/RFC9051, , <https://www.rfc-editor.org/info/rfc9051>.
[RFC9250]
Huitema, C., Dickinson, S., and A. Mankin, "DNS over Dedicated QUIC Connections", RFC 9250, DOI 10.17487/RFC9250, , <https://www.rfc-editor.org/info/rfc9250>.
[RFC9460]
Schwartz, B., Bishop, M., and E. Nygren, "Service Binding and Parameter Specification via the DNS (SVCB and HTTPS Resource Records)", RFC 9460, DOI 10.17487/RFC9460, , <https://www.rfc-editor.org/info/rfc9460>.
[I-D.ietf-tls-svcb-ech]
Schwartz, B. M., Bishop, M., and E. Nygren, "Bootstrapping TLS Encrypted ClientHello with DNS Service Bindings", Work in Progress, Internet-Draft, draft-ietf-tls-svcb-ech-06, , <https://datatracker.ietf.org/doc/html/draft-ietf-tls-svcb-ech-06>.

Appendix A. Rationale

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.

Appendix B. Acknowledgements

Thanks to Jan Ingvoldstad for remarks on the missing rationale.

Author's Address

Steffen Nurpmeso (editor)