145 lines
4.6 KiB
Text
145 lines
4.6 KiB
Text
Internet Draft
|
|
|
|
Stream: Independent Submission
|
|
Category:
|
|
Date: 2024/05/26
|
|
Author: J.Harris
|
|
Author: B.Quatermass
|
|
|
|
--
|
|
|
|
Mailmaint Working Group J. Harris
|
|
Internet Draft Independent
|
|
Category: Experimental B. Quatermass
|
|
Independent
|
|
May 2024
|
|
|
|
The WELLKNOWN SMTP Service Extension
|
|
|
|
Abstract
|
|
--------
|
|
|
|
This document defines a WELLKNOWN extension for the Simple Mail Transfer Protocol
|
|
(SMTP). The extension provides the means for an SMTP server to inform a client
|
|
of information relating to the server which is intended to be public.
|
|
|
|
Status of this Memo
|
|
-------------------
|
|
|
|
This document is published for examination, experimental implementation, and
|
|
evaluation.
|
|
|
|
This document defines an Experimental Protocol for the Internet community.
|
|
|
|
This is a contribution to the RFC Series, independently of any other RFC
|
|
stream. The RFC Editor has chosen to publish this document at its discretion
|
|
and makes no statement about its value for implementation or deployment.
|
|
|
|
1. Introduction
|
|
---------------
|
|
|
|
The Simple Mail Transfer Protocol [SMTP] provides the ability to transfer email
|
|
messages from a sending system to a recieving one.
|
|
|
|
Senders may on occasion wish to discover additional information, not directly
|
|
related to a specific email message, about the receiving system. An example
|
|
is a contact point for discussing problems in communications.
|
|
|
|
The WELLKNOWN extension provides a means for delivering such information, by an
|
|
SMTP server on request from an SMTP client.
|
|
|
|
2. The WELLKNOWN SMTP Extension
|
|
------------------------------
|
|
|
|
The extension mechanism for SMTP is defined in Section 2.2 of the current SMTP
|
|
specification [RFC5321a].
|
|
|
|
The name of the extension is WELLKNOWN. Servers implementing this extension
|
|
advertise a WELLKNOWN as a keyword in the response to EHLO. The keyword has no
|
|
parameters.
|
|
|
|
A new SMTP verb, "WELLKNOWN" is defined.
|
|
|
|
3. The WELLNOWN verb
|
|
--------------------
|
|
|
|
The format for the WELLKNOWN verb is:
|
|
|
|
WELLKNOWN <request-key>
|
|
|
|
The <request-key> parameter identifies the specific type of information being
|
|
requested. It is separated from the verb by whitespace, and is xtext-encoded
|
|
per RFC 3461 Section 4 [RFC3461].
|
|
|
|
After the client gives the WELLKNOWN command, the server responds with one of
|
|
the 2xx, 4xx or 5xx response codes.
|
|
|
|
A success response MUST be a 250 response code, and MUST be multi-line.
|
|
|
|
The first line of a success response will be a response summary; the following
|
|
lines are the information data requested, xtext-encoded [RFC3461]. The encoded
|
|
information data MAY be split over multiple response lines.
|
|
|
|
A response summary MAY be empty. In this case the first line of the response
|
|
will be only "250-".
|
|
|
|
A response summary MAY contain a size parameter, giving the number of bytes
|
|
of data. This parameter is expressed as "SIZE=" followed by a decimal number.
|
|
The size value does not include the xtext-encoding overheader, the "250-" or
|
|
"250 " response code prefixing each line, nor the CR,LF bytes between lines.
|
|
|
|
4. Example
|
|
----------
|
|
|
|
S: 220 ESMTP spoken here
|
|
|
|
C: EHLO test
|
|
|
|
S: 250-Hi there, mate
|
|
S: 250-SIZE
|
|
S: 250-LIMITS
|
|
S: 250-8BITMIME
|
|
S: 250-PIPELINING
|
|
S: 250-WELLKNOWN
|
|
S: 250 HELP
|
|
|
|
C: WELLKNOWN security.txt
|
|
|
|
S: 250-SIZE=285
|
|
S: 250-Contact:+20mailto:security@example.com+0A
|
|
S: 250-+0A
|
|
S: 250-Canonical:+20https://www.example.com/.well-known/security.txt+0A
|
|
S: 250-Canonical:+20mailserver://mx1.example.com/WELLKNOWN/security.txt+0A
|
|
S: 250-Canonical:+20mailserver://mx2.example.com/WELLKNOWN/security.txt+0A
|
|
S: 250-+0A
|
|
S: 250-Preferred-Languages:+20en+0A
|
|
S: 250-+0A
|
|
S: 250-Expires:+202025-02-01T00:00:00.000Z+0A
|
|
S: 250 +0A
|
|
|
|
C: QUIT
|
|
|
|
S: 221
|
|
|
|
|
|
5. Use Cases
|
|
------------
|
|
|
|
5.1 security.txt
|
|
---
|
|
It is common for a website to provide public-access information via the HTTP
|
|
protocol. One such item, a "security.txt" file, is descibed in RFC 9116.
|
|
|
|
The WELLKNOWN extension provides a method for publishing similar information
|
|
for an SMTP host, without the need to operate an HTTP server.
|
|
|
|
It is RECOMMENDED that the request-key for this usage be "security.txt".
|
|
|
|
5.2 ACME handshake
|
|
---
|
|
ACME [RFC8555] provides for obtaining a certificate, needed for encrpted
|
|
communications using TLS. It defines handshake methods using the DNS and using
|
|
HTTP, for verifying ownership of the domain being certified.
|
|
|
|
The WELLKNOWN extension provides a method for operating a similar handshake,
|
|
without the need to operate an HTTP server or manipulate the DNS.
|