SMTP Require TLS OptionAltmode NetworksLos AltosCalifornia94024United States of Americafenton@bluepopcorn.net
General
Internet Engineering Task ForceSMTPThe SMTP STARTTLS option, used in negotiating transport-level
encryption of SMTP connections, is not as useful from a security
standpoint as it might be because of its opportunistic nature;
message delivery is, by default, prioritized over security. This
document describes an SMTP service extension, REQUIRETLS, and
a message header field, TLS-Required. If the REQUIRETLS option or
TLS-Required message header field is used when sending a message,
it asserts a request on the part of the message sender to
override the default negotiation of TLS, either by requiring that
TLS be negotiated when the message is relayed or by requesting
that recipient-side policy mechanisms such as MTA-STS and DNS-Based
Authentication of Named Entities (DANE) be
ignored when relaying a message for which security is
unimportant.Status of This Memo
This is an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by
the Internet Engineering Steering Group (IESG). Further
information on Internet Standards is available in Section 2 of
RFC 7841.
Information about the current status of this document, any
errata, and how to provide feedback on it may be obtained at
.
Copyright Notice
Copyright (c) 2019 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
() 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 Simplified BSD License text as described in
Section 4.e of the Trust Legal Provisions and are provided without
warranty as described in the Simplified BSD License.
Table of Contents
. Introduction
. Requirements Language
. The REQUIRETLS Service Extension
. The TLS-Required Header Field
. REQUIRETLS Semantics
. REQUIRETLS Receipt Requirements
. REQUIRETLS Sender Requirements
. Sending with TLS Required
. Sending with TLS Optional
. REQUIRETLS Submission
. Delivery of REQUIRETLS messages
. Non-delivery Message Handling
. Reorigination Considerations
. IANA Considerations
. Security Considerations
. Passive Attacks
. Active Attacks
. Bad-Actor MTAs
. Policy Conflicts
. References
. Normative References
. Informative References
. Examples
. REQUIRETLS SMTP Option
. TLS-Required Header Field
Acknowledgements
Author's Address
IntroductionThe SMTPSTARTTLS service extension provides a
means by which an SMTP server and client can establish a
Transport Layer Security (TLS) protected session for the
transmission of email messages. By default, TLS is used only upon
mutual agreement (successful negotiation) of STARTTLS between the
client and server; if this is not possible, the message is sent
without transport encryption. Furthermore, it is common practice
for the client to negotiate TLS even if the SMTP server's
certificate is invalid.Policy mechanisms such as DANE
and MTA-STS may
impose requirements for the use of TLS for email destined for
some domains. However, such policies do not allow the sender to
specify which messages are more sensitive and require
transport-level encryption and which ones are less sensitive and
ought to be relayed even if TLS cannot be negotiated
successfully.The default opportunistic nature of SMTP TLS enables several
on-the-wire attacks on SMTP security between MTAs. These
include passive eavesdropping on connections for which TLS is not
used, interference in the SMTP protocol to prevent TLS from being
negotiated (presumably accompanied by eavesdropping), and insertion
of a man-in-the-middle attacker exploiting the lack of
server authentication by the client. Attacks are described
in more detail in the section
of this
document.REQUIRETLS consists of two mechanisms: an SMTP service
extension and a message header field. The service extension is
used to specify that a given message sent during a particular session
MUST be sent over a TLS-protected session with specified security
characteristics. It also requires that the SMTP server advertise
that it supports REQUIRETLS, in effect promising that it
will honor the requirement to enforce TLS transmission and
REQUIRETLS support for onward transmission of those messages.The TLS-Required message header field is used to convey a
request to ignore recipient-side policy mechanisms such as
MTA-STS and DANE, thereby prioritizing delivery over ability to
negotiate TLS. Unlike the service extension, the TLS-Required
header field allows the message to transit through one or more
MTAs that do not support REQUIRETLS.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 when, and only when, they appear in all capitals,
as shown here.
The formal syntax uses the Augmented Backus-Naur Form (ABNF)
, including the core rules defined in
Appendix B of that document.The REQUIRETLS Service ExtensionThe REQUIRETLS SMTP service extension has the following characteristics:
The textual name of the extension is "Require TLS".
The EHLO keyword value associated with this extension is
"REQUIRETLS".
No additional SMTP verbs are defined by this extension.
One optional parameter ("REQUIRETLS") is added to the MAIL
FROM command by this extension. No value is associated with
this parameter.
The maximum length of a MAIL FROM command line is increased
by 11 octets by the possible addition of a space and the
REQUIRETLS keyword.
One new SMTP status code is defined by this extension to
convey an error condition resulting from failure of the client to
send data to a server that does not also support
the REQUIRETLS extension.
The REQUIRETLS extension is valid for message relay , submission , and the Local Mail Transfer Protocol
(LMTP) .
The ABNF syntax for the MAIL FROM parameter is as follows:
requiretls-param = "REQUIRETLS"
; where requiretls-param is an instance of an
; esmtp-param used in Mail-parameters in
; RFC 5321, Section 4.1.2. There is no esmtp-value
; associated with requiretls-param.
In order to specify REQUIRETLS treatment for a given message,
the REQUIRETLS option is specified in the MAIL FROM command when
that message is transmitted. This option MUST only be specified in the
context of an SMTP session meeting the security requirements of
REQUIRETLS:
The session itself MUST employ TLS transmission.
If the SMTP server to which the message is being transmitted
is identified through an MX record lookup, its name
MUST be validated via a DNSSEC signature on the recipient
domain's MX record, or the MX hostname MUST be
validated by an MTA-STS policy as described in . DNSSEC is defined
in ,
, and
.
The certificate presented by the SMTP server either MUST
be verified successfully by a trust chain leading to a certificate
trusted by the SMTP client, or it MUST be verified successfully using
DANE, as specified in . For trust chains, the
choice of trusted (root) certificates is at the discretion of
the SMTP client.
Following the negotiation of STARTTLS, the SMTP server MUST
advertise in the subsequent EHLO response that it supports REQUIRETLS.
The TLS-Required Header FieldOne new message header field ,
TLS-Required, is defined by this
specification. It is used for messages for which the originator
requests that the recipient
TLS policy (including MTA-STS and
DANE) be ignored. This might be
done, for example, to report a misconfigured mail server, such as
an expired TLS certificate.The TLS-Required header field has a single REQUIRED parameter:
No - The SMTP client SHOULD attempt to send the message
regardless of its ability to negotiate STARTTLS with the SMTP
server, ignoring policy-based mechanisms (including MTA-STS and
DANE), if any, asserted by
the recipient domain. Nevertheless, the client SHOULD negotiate
STARTTLS with the server if available.
More than one instance of the TLS-Required header field MUST NOT appear in a given message.The ABNF syntax for the TLS-Required header field is as
follows:
requiretls-field = "TLS-Required:" [FWS] "No" CRLF
; where requiretls-field in an instance of an
; optional-field defined in RFC 5322, Section 3.6.8.
FWS = <as defined in RFC 5322>
CRLF = <as defined in RFC 5234> REQUIRETLS SemanticsREQUIRETLS Receipt RequirementsUpon receipt of the REQUIRETLS option on a MAIL FROM command
during the receipt of a message, an SMTP server MUST tag that
message as needing REQUIRETLS handling.Upon receipt of a message not specifying the REQUIRETLS
option on its MAIL FROM command but containing the TLS-Required
header field in its message header, an SMTP server implementing
this specification MUST tag that message with the option
specified in the TLS-Required header field. If the REQUIRETLS
MAIL FROM parameter is specified, the TLS-Required header field
MUST be ignored but MAY be included in the onward relay of the
message.The manner in which the above tagging takes place is
implementation dependent. If the message is being locally
aliased and redistributed to multiple addresses, all instances
of the message MUST be tagged in the same manner.REQUIRETLS Sender RequirementsSending with TLS RequiredWhen sending a message tagged as requiring TLS for which the
MAIL FROM return-path is not empty (an empty MAIL FROM
return-path indicating a bounce message), the sending
(client) MTA MUST:
Look up the SMTP server to which the message is to be sent,
as described in .
If the server lookup is accomplished via the recipient
domain's MX record (the usual case) and is not accompanied by a valid
DNSSEC signature, the client MUST also validate the SMTP
server name using MTA-STS, as described in
.
Open an SMTP session with the peer SMTP server using the
EHLO verb.
Establish a TLS-protected SMTP session with its peer SMTP
server and authenticate the server's certificate as specified
in or , as applicable. The hostname from the
MX record lookup (or the domain name in the absence of an MX
record where an A record is used directly) MUST match the DNS-ID
or CN-ID of the certificate presented by the server.
Ensure that the response to the subsequent EHLO following
establishment of the TLS protection advertises the REQUIRETLS
capability.
The SMTP client SHOULD follow the recommendations in or its successor with respect to
negotiation of the TLS session.If any of the above steps fail, the client MUST issue a QUIT
to the server and repeat steps 2-5 with each host on the
recipient domain's list of MX hosts in an attempt to find a
mail path that meets the sender's requirements. The client MAY
send other, unprotected messages to that server if it has any
such messages prior to issuing the QUIT. If there are no more MX hosts, the
client MUST NOT transmit the message to the domain. Following such a failure, the SMTP client MUST send a
non-delivery notification to the reverse-path of the failed
message, as described in . The
following status codesSHOULD be used:
REQUIRETLS not supported by server: 5.7.30 REQUIRETLS
support required
Unable to establish TLS-protected SMTP session: 5.7.10
Encryption needed
Refer to for further requirements regarding
non-delivery messages.If all REQUIRETLS requirements have been met, transmit the
message, issuing the REQUIRETLS option on the MAIL FROM command
with the required option(s), if any.Sending with TLS OptionalMessages tagged "TLS-Required: No" are handled as
follows. When sending such a message, the sending (client)
MTA MUST:
Look up the SMTP server to which the message is to be
sent, as described in .
Open an SMTP session with the peer SMTP server using the
EHLO verb. Attempt to negotiate STARTTLS if possible, and
follow any policy published by the recipient domain, but do
not fail if this is unsuccessful.
Some SMTP servers may be configured to require STARTTLS
connections as a matter of policy and not accept messages in
the absence of STARTTLS. A non-delivery notification MUST be
returned to the sender if message relay fails due to an
inability to negotiate STARTTLS when required by the
server.Since messages tagged with "TLS-Required: No" will sometimes
be sent to SMTP servers not supporting REQUIRETLS, that
option will not be uniformly observed by all SMTP relay
hops.REQUIRETLS SubmissionA Mail User Agent (MUA) or other agent making the initial introduction of a
message has the option to decide whether to require TLS. If
TLS is to be required, it MUST do so by negotiating STARTTLS
and REQUIRETLS and including the REQUIRETLS option on the MAIL
FROM command, as is done for message relay.When TLS is not to be required, the sender MUST include the
TLS-Required header field in the message. SMTP servers
implementing this specification MUST interpret this header
field as described in .In either case, the decision whether to specify REQUIRETLS
MAY be done based on a user interface selection or based on a
ruleset or other policy. The manner in which the decision to
require TLS is made is implementation dependent and is beyond
the scope of this specification.Delivery of REQUIRETLS messagesMessages are usually retrieved by end users using protocols
other than SMTP such as IMAP,
POP, or Web mail systems. Mail
delivery agents supporting the REQUIRETLS SMTP option SHOULD
observe the guidelines in .Non-delivery Message HandlingNon-delivery ("bounce") messages usually contain important
metadata about the message to which they refer, including the
original message header. They therefore MUST be protected in
the same manner as the original message.
All non-delivery messages resulting from messages with the REQUIRETLS SMTP
option, whether resulting from a REQUIRETLS error or some other issue, MUST
also specify the REQUIRETLS SMTP option unless redacted as described below.
The path from the origination of an error bounce message
back to the MAIL FROM address may not share the same REQUIRETLS
support as the forward path. Therefore, users requiring TLS are
advised to make sure that they are capable of receiving mail
using REQUIRETLS as well. Otherwise, such non-delivery messages
will be lost.If a REQUIRETLS message is bounced, the server MUST behave
as if RET=HDRS was present, as described in . If both RET=FULL and REQUIRETLS are
present, the RET=FULL MUST be disregarded. The SMTP client for a
REQUIRETLS bounce message uses an empty MAIL FROM
return-path, as required by . When
the MAIL FROM return-path is empty, the REQUIRETLS parameter
SHOULD NOT cause a bounce message to be discarded even if the
next-hop relay does not advertise REQUIRETLS.Senders of messages requiring TLS are advised to consider
the possibility that bounce messages will be lost as a result
of REQUIRETLS return path failure and that some information
could be leaked if a bounce message is not able to be
transmitted with REQUIRETLS.Reorigination ConsiderationsIn a number of situations, a mediator
originates a new message as a result of an incoming message. These
situations include but are not limited to mailing lists (including
administrative traffic such as message approval requests),
Sieve, "vacation" responders, and other
filters to which incoming
messages may be piped. These newly originated messages may essentially
be copies of the incoming message, such as with a forwarding service
or a mailing list expander. In other cases, such as with a vacation
message or a delivery notification, they will be different but might
contain parts of the original message or other information for which
the original message sender wants to influence the requirement to use
TLS transmission.Mediators that reoriginate messages should apply REQUIRETLS requirements
in incoming messages (both requiring TLS transmission and requesting
that TLS not be required) to the reoriginated messages to the extent
feasible. A limitation to this might be that for a message requiring
TLS, redistribution to multiple addresses while retaining the TLS
requirement could result in the message not being delivered to some of
the intended recipients.User-side mediators (such as use of Sieve rules on a user agent)
typically do not have access to the SMTP details and therefore may
not be aware of the REQUIRETLS requirement on a delivered message.
Recipients that expect sensitive traffic should avoid the use of
user-side mediators. Alternatively, if operationally feasible (such as when
forwarding to a specific, known address), they should apply REQUIRETLS
to all reoriginated messages that do not contain the "TLS-Required: No" header
field.IANA ConsiderationsPer this document, IANA has added
the following keyword to the "SMTP Service Extensions" subregistry of the
"Mail Parameters" registry:
EHLO Keyword:
REQUIRETLS
Description:
Require TLS
Syntax and parameters:
(no parameters)
Additional SMTP verbs:
none
MAIL and RCPT parameters:
REQUIRETLS parameter on MAIL
Behavior:
Use of the REQUIRETLS parameter on the MAIL verb causes
that message to require the use of TLS and tagging with REQUIRETLS for all onward relay.
Command length increment:
11 characters
Per this document, IANA has added an
entry to the "Enumerated Status Codes" subregistry of the "Simple Mail Transfer Protocol (SMTP) Enhanced Status
Codes Registry":
Code:
X.7.30
Sample Text:
REQUIRETLS support required
Associated basic status code:
550
Description:
This indicates that the message was not able to be
forwarded because it was received with a REQUIRETLS requirement and none of
the SMTP servers to which the message should be forwarded provide this support.
Reference:
RFC 8689
Submitter:
J. Fenton
Change Controller:
IESG
Per this document, IANA has added
an entry to the "Permanent Message Header Field
Names" subregistry of the "Message Headers" registry as follows:
Header field name:
TLS-Required
Applicable protocol:
mail
Status:
standard
Author/change controller:
IETF
Specification document:
RFC 8689
Security ConsiderationsThe purpose of REQUIRETLS is to give the originator of a
message control over the security of email they send, either by
conveying an expectation that it will be transmitted in an
encrypted form over the wire or explicitly indicating that transport
encryption is not required if it cannot be successfully
negotiated.The following considerations apply to the REQUIRETLS service
extension but not the TLS-Required header field, since messages
specifying the header field are less concerned with transport
security.Passive AttacksREQUIRETLS is generally effective against passive
attackers who are merely trying to eavesdrop on an SMTP
exchange between an SMTP client and server. This assumes, of
course, the cryptographic integrity of the TLS connection
being used.Active AttacksActive attacks against TLS-encrypted SMTP connections can
take many forms. One such attack is to interfere in the
negotiation by changing the STARTTLS command to something
illegal such as XXXXXXXX. This causes TLS negotiation to fail
and messages to be sent in the clear, where they can be
intercepted. REQUIRETLS detects the failure of STARTTLS and
declines to send the message rather than send it
insecurely.A second form of attack is a man-in-the-middle attack
where the attacker terminates the TLS connection rather than
the intended SMTP server. This is possible when, as is
commonly the case, the SMTP client either does not verify the
server's certificate or establishes the connection even when
the verification fails. REQUIRETLS requires successful
certificate validation before sending the message.Another active attack involves the spoofing of DNS MX
records of the recipient domain. An attacker with this
capability could potentially cause the message to be redirected to a mail
server under the attacker's own control, which would
presumably have a valid certificate. REQUIRETLS requires that
the recipient domain's MX record lookup be validated either
using DNSSEC or via a published MTA-STS policy that specifies
the acceptable SMTP server hostname(s) for the recipient domain.Bad-Actor MTAsA bad-actor MTA along the message transmission path could
misrepresent its support of REQUIRETLS and/or actively strip
REQUIRETLS tags from messages it handles. However, since
intermediate MTAs are already trusted with the cleartext of
messages they handle, and are not part of the threat model
for transport-layer security, they are also not part of the
threat model for REQUIRETLS.It should be reemphasized that since SMTP TLS is a
transport-layer security protocol, messages sent using
REQUIRETLS are not encrypted end-to-end and are visible to
MTAs that are part of the message delivery path. Messages
containing sensitive information that MTAs should not have
access to MUST be sent using end-to-end content encryption
such as OpenPGP or S/MIME.Policy ConflictsIn some cases, the use of the TLS-Required header field may conflict
with a recipient domain policy expressed through the DANE or MTA-STS protocols.
Although these protocols encourage the use of TLS transport by advertising
the availability of TLS, the use of the "TLS-Required: No" header field represents an
explicit decision on the part of the sender not to require the use of TLS, such
as to overcome a configuration error. The recipient domain has the ultimate
ability to require TLS by not accepting messages when STARTTLS has not been
negotiated; otherwise, "TLS-Required: No" is effectively directing the client
MTA to behave as if it does not support DANE or MTA-STS.ReferencesNormative ReferencesMail ParametersIANAPermanent Message Header Field NamesIANAKey words for use in RFCs to Indicate Requirement LevelsIn many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.SMTP Service Extension for Secure SMTP over Transport Layer SecurityThis document describes an extension to the SMTP (Simple Mail Transfer Protocol) service that allows an SMTP server and client to use TLS (Transport Layer Security) to provide private, authenticated communication over the Internet. This gives SMTP agents the ability to protect some or all of their communications from eavesdroppers and attackers. [STANDARDS-TRACK]Simple Mail Transfer Protocol (SMTP) Service Extension for Delivery Status Notifications (DSNs)This memo defines an extension to the Simple Mail Transfer Protocol (SMTP) service, which allows an SMTP client to specify (a) that Delivery Status Notifications (DSNs) should be generated under certain conditions, (b) whether such notifications should return the contents of the message, and (c) additional information, to be returned with a DSN, that allows the sender to identify both the recipient(s) for which the DSN was issued, and the transaction in which the original message was sent. [STANDARDS-TRACK]DNS Security Introduction and RequirementsThe Domain Name System Security Extensions (DNSSEC) add data origin authentication and data integrity to the Domain Name System. This document introduces these extensions and describes their capabilities and limitations. This document also discusses the services that the DNS security extensions do and do not provide. Last, this document describes the interrelationships between the documents that collectively describe DNSSEC. [STANDARDS-TRACK]Resource Records for the DNS Security ExtensionsThis document is part of a family of documents that describe the DNS Security Extensions (DNSSEC). The DNS Security Extensions are a collection of resource records and protocol modifications that provide source authentication for the DNS. This document defines the public key (DNSKEY), delegation signer (DS), resource record digital signature (RRSIG), and authenticated denial of existence (NSEC) resource records. The purpose and format of each resource record is described in detail, and an example of each resource record is given. This document obsoletes RFC 2535 and incorporates changes from all updates to RFC 2535. [STANDARDS-TRACK]Protocol Modifications for the DNS Security ExtensionsThis document is part of a family of documents that describe the DNS Security Extensions (DNSSEC). The DNS Security Extensions are a collection of new resource records and protocol modifications that add data origin authentication and data integrity to the DNS. This document describes the DNSSEC protocol modifications. This document defines the concept of a signed zone, along with the requirements for serving and resolving by using DNSSEC. These techniques allow a security-aware resolver to authenticate both DNS resource records and authoritative DNS error indications. This document obsoletes RFC 2535 and incorporates changes from all updates to RFC 2535. [STANDARDS-TRACK]Augmented BNF for Syntax Specifications: ABNFInternet technical specifications often need to define a formal syntax. Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications. The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power. The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges. This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications. [STANDARDS-TRACK]A Registry for SMTP Enhanced Mail System Status CodesThe specification for enhanced mail system status codes, RFC 3463, establishes a new code model and lists a collection of status codes. While it anticipated that more codes would be added over time, it did not provide an explicit mechanism for registering and tracking those codes. This document specifies an IANA registry for mail system enhanced status codes, and initializes that registry with the codes so far established in published standards-track documents, as well as other codes that have become established in the industry. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.Simple Mail Transfer ProtocolThis document is a specification of the basic protocol for Internet electronic mail transport. It consolidates, updates, and clarifies several previous documents, making all or parts of most of them obsolete. It covers the SMTP extension mechanisms and best practices for the contemporary Internet, but does not provide details about particular extensions. Although SMTP was designed as a mail transport and delivery protocol, this specification also contains information that is important to its use as a "mail submission" protocol for "split-UA" (User Agent) mail reading systems and mobile environments. [STANDARDS-TRACK]Internet Message FormatThis document specifies the Internet Message Format (IMF), a syntax for text messages that are sent between computer users, within the framework of "electronic mail" messages. This specification is a revision of Request For Comments (RFC) 2822, which itself superseded Request For Comments (RFC) 822, "Standard for the Format of ARPA Internet Text Messages", updating it to reflect current practice and incorporating incremental changes that were specified in other RFCs. [STANDARDS-TRACK]Representation and Verification of Domain-Based Application Service Identity within Internet Public Key Infrastructure Using X.509 (PKIX) Certificates in the Context of Transport Layer Security (TLS)Many application technologies enable secure communication between two entities by means of Internet Public Key Infrastructure Using X.509 (PKIX) certificates in the context of Transport Layer Security (TLS). This document specifies procedures for representing and verifying the identity of application services in such interactions. [STANDARDS-TRACK]Recommendations for Secure Use of Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) are widely used to protect data exchanged over application protocols such as HTTP, SMTP, IMAP, POP, SIP, and XMPP. Over the last few years, several serious attacks on TLS have emerged, including attacks on its most commonly used cipher suites and their modes of operation. This document provides recommendations for improving the security of deployed services that use TLS and DTLS. The recommendations are applicable to the majority of use cases.SMTP Security via Opportunistic DNS-Based Authentication of Named Entities (DANE) Transport Layer Security (TLS)This memo describes a downgrade-resistant protocol for SMTP transport security between Message Transfer Agents (MTAs), based on the DNS-Based Authentication of Named Entities (DANE) TLSA DNS record. Adoption of this protocol enables an incremental transition of the Internet email backbone to one using encrypted and authenticated Transport Layer Security (TLS).Ambiguity of Uppercase vs Lowercase in RFC 2119 Key WordsRFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.Cleartext Considered Obsolete: Use of Transport Layer Security (TLS) for Email Submission and AccessThis specification outlines current recommendations for the use of Transport Layer Security (TLS) to provide confidentiality of email traffic between a Mail User Agent (MUA) and a Mail Submission Server or Mail Access Server. This document updates RFCs 1939, 2595, 3501, 5068, 6186, and 6409.SMTP MTA Strict Transport Security (MTA-STS)SMTP MTA Strict Transport Security (MTA-STS) is a mechanism enabling mail service providers (SPs) to declare their ability to receive Transport Layer Security (TLS) secure SMTP connections and to specify whether sending SMTP servers should refuse to deliver to MX hosts that do not offer TLS with a trusted server certificate.Simple Mail Transfer Protocol (SMTP) Enhanced Status Codes RegistryIANAInformative ReferencesPost Office Protocol - Version 3The Post Office Protocol - Version 3 (POP3) is intended to permit a workstation to dynamically access a maildrop on a server host in a useful fashion. [STANDARDS-TRACK]Local Mail Transfer ProtocolSMTP [SMTP] [HOST-REQ] and its service extensions [ESMTP] provide a mechanism for transferring mail reliably and efficiently. The design of the SMTP protocol effectively requires the server to manage a mail delivery queue. This memo provides information for the Internet community. This memo does not specify an Internet standard of any kind.INTERNET MESSAGE ACCESS PROTOCOL - VERSION 4rev1The Internet Message Access Protocol, Version 4rev1 (IMAP4rev1) allows a client to access and manipulate electronic mail messages on a server. IMAP4rev1 permits manipulation of mailboxes (remote message folders) in a way that is functionally equivalent to local folders. IMAP4rev1 also provides the capability for an offline client to resynchronize with the server. IMAP4rev1 includes operations for creating, deleting, and renaming mailboxes, checking for new messages, permanently removing messages, setting and clearing flags, RFC 2822 and RFC 2045 parsing, searching, and selective fetching of message attributes, texts, and portions thereof. Messages in IMAP4rev1 are accessed by the use of numbers. These numbers are either message sequence numbers or unique identifiers. IMAP4rev1 supports a single server. A mechanism for accessing configuration information to support multiple IMAP4rev1 servers is discussed in RFC 2244. IMAP4rev1 does not specify a means of posting mail; this function is handled by a mail transfer protocol such as RFC 2821. [STANDARDS-TRACK]OpenPGP Message FormatThis document is maintained in order to publish all necessary information needed to develop interoperable applications based on the OpenPGP format. It is not a step-by-step cookbook for writing an application. It describes only the format and methods needed to read, check, generate, and write conforming packets crossing any network. It does not deal with storage and implementation questions. It does, however, discuss implementation issues necessary to avoid security flaws.OpenPGP software uses a combination of strong public-key and symmetric cryptography to provide security services for electronic communications and data storage. These services include confidentiality, key management, authentication, and digital signatures. This document specifies the message formats used in OpenPGP. [STANDARDS-TRACK]Sieve: An Email Filtering LanguageThis document describes a language for filtering email messages at time of final delivery. It is designed to be implementable on either a mail client or mail server. It is meant to be extensible, simple, and independent of access protocol, mail architecture, and operating system. It is suitable for running on a mail server where users may not be allowed to execute arbitrary programs, such as on black box Internet Message Access Protocol (IMAP) servers, as the base language has no variables, loops, or ability to shell out to external programs. [STANDARDS-TRACK]Internet Mail ArchitectureOver its thirty-five-year history, Internet Mail has changed significantly in scale and complexity, as it has become a global infrastructure service. These changes have been evolutionary, rather than revolutionary, reflecting a strong desire to preserve both its installed base and its usefulness. To collaborate productively on this large and complex system, all participants need to work from a common view of it and use a common language to describe its components and the interactions among them. But the many differences in perspective currently make it difficult to know exactly what another participant means. To serve as the necessary common frame of reference, this document describes the enhanced Internet Mail architecture, reflecting the current service. This memo provides information for the Internet community.Message Submission for MailThis memo splits message submission from message relay, allowing each service to operate according to its own rules (for security, policy, etc.), and specifies what actions are to be taken by a submission server.Message relay is unaffected, and continues to use SMTP over port 25.When conforming to this document, message submission uses the protocol specified here, normally over port 587.This separation of function offers a number of benefits, including the ability to apply specific security or policy requirements. [STANDARDS-TRACK]Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 4.0 Message SpecificationThis document defines Secure/Multipurpose Internet Mail Extensions (S/MIME) version 4.0. S/MIME provides a consistent way to send and receive secure MIME data. Digital signatures provide authentication, message integrity, and non-repudiation with proof of origin. Encryption provides data confidentiality. Compression can be used to reduce data size. This document obsoletes RFC 5751.ExamplesThis section is informative.REQUIRETLS SMTP OptionThe TLS-Required SMTP option is used to express the intention of
the sender to have the associated message relayed using TLS. In
the following example, lines beginning with "C:" are transmitted
from the SMTP client to the server, and lines beginning with "S:"
are transmitted in the opposite direction.
S: 220 mail.example.net ESMTP
C: EHLO mail.example.org
S: 250-mail.example.net Hello example.org [192.0.2.1]
S: 250-SIZE 52428800
S: 250-8BITMIME
S: 250-PIPELINING
S: 250-STARTTLS
S: 250 HELP
C: STARTTLS
S: TLS go ahead
(at this point TLS negotiation takes place. The remainder of this
session occurs within TLS.)
S: 220 mail.example.net ESMTP
C: EHLO mail.example.org
S: 250-mail.example.net Hello example.org [192.0.2.1]
S: 250-SIZE 52428800
S: 250-8BITMIME
S: 250-PIPELINING
S: 250-REQUIRETLS
S: 250 HELP
C: MAIL FROM:<roger@example.org> REQUIRETLS
S: 250 OK
C: RCPT TO:<editor@example.net>
S: 250 Accepted
C: DATA
S: 354 Enter message, ending with "." on a line by itself
(message follows)
C: .
S: 250 OK
C: QUIT
TLS-Required Header FieldThe TLS-Required header field is used when the sender requests
that the mail system not heed a default policy of the recipient
domain requiring TLS. It might be used, for example, to allow
problems with the recipient domain's TLS certificate to be
reported:
From: Roger Reporter <roger@example.org>
To: Andy Admin <admin@example.com>
Subject: Certificate problem?
TLS-Required: No
Date: Fri, 18 Jan 2019 10:26:55 -0800
Message-ID: <5c421a6f79c0e_d153ff8286d45c468473@mail.example.org>
Andy, there seems to be a problem with the TLS certificate
on your mail server. Are you aware of this?
Roger Acknowledgements
The author would like to acknowledge many helpful suggestions on the
ietf-smtp and uta mailing lists, in particular those of Viktor Dukhovni,
Tony Finch, Jeremy Harris, Arvel Hathcock, John Klensin, Barry Leiba, John
Levine, Chris Newman, Rolf Sonneveld, and Per Thorsheim.
Author's AddressAltmode NetworksLos AltosCalifornia94024United States of Americafenton@bluepopcorn.net