Internet DRAFT - draft-melnikov-pop3-over-tls
draft-melnikov-pop3-over-tls
INTERNET-DRAFT A. Melnikov
Intended Status: Standards Track Isode Limited
Updates: 2595 (if approved) C. Newman
Expires: March 2, 2012 Oracle
M. Yevstifeyev, Ed.
August 30, 2011
POP3 over TLS
draft-melnikov-pop3-over-tls-02
Abstract
This document specifies how the Post Office Protocol, Version 3
(POP3) may be secured with Transport Layer Security (TLS) protocol,
by establishing TLS connection directly before POP3 transaction. It
updates RFC 2595.
Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as
Internet-Drafts.
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."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/1id-abstracts.html
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
Copyright and License Notice
Copyright (c) 2011 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
(http://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
Melnikov et al. Expires March 2, 2012 [Page 1]
INTERNET DRAFT POP3 over TLS August 30, 2011
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
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . 3
2. POP3 over TLS Protocol . . . . . . . . . . . . . . . . . . . . 3
2.1. Connection Establishment and User Authentication . . . . . 3
2.2. Data Exchange . . . . . . . . . . . . . . . . . . . . . . . 4
2.3. Connection Closure . . . . . . . . . . . . . . . . . . . . 4
2.4. Default Port . . . . . . . . . . . . . . . . . . . . . . . 4
2.5. Disadvantages of POP3S . . . . . . . . . . . . . . . . . . 4
3. Security Considerations . . . . . . . . . . . . . . . . . . . . 4
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5
5. References . . . . . . . . . . . . . . . . . . . . . . . . . . 5
5.1. Normative References . . . . . . . . . . . . . . . . . . . 5
5.2. Informative References . . . . . . . . . . . . . . . . . . 6
Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
The Post Office Protocol version 3 (POP3), which is defined in RFC
1939 [RFC1939], is an application-layer protocol used by local e-mail
clients to retrieve e-mail from a remote server over a simple TCP/IP
connection. It supports simple download-and-delete requirements for
access to remote mailboxes (also called a maildrop).
As POP3 is employed to transfer sensitive information, there is a
need for privacy protection. Transport Layer Security (TLS)
[RFC5246] (and its predecessor Secure Sockets Layer (SSL) [RFC6101])
are commonly used for this purpose.
Two ways of protecting POP3 with TLS have been deployed (like 2 ways
of securing HTTP [RFC2616]; see below). The first includes
establishing TLS layer connection during the POP3 transaction (also
known as upgrading to TLS) [RFC2595]. The other one involves
establishing TLS connection directly before establishing POP3
transaction. Unlike the former, this way (called "POP3S" throughout
this document) has not been previously specified in an RFC. (In the
case with HTTP the first way is specified in RFC 2817 [RFC2817]; the
second one - in RFC 2818 [RFC2818].)
This document specifies POP3S. It updates RFC 2595 [RFC2595] (see
Section 2.5 for justification). This memo also updates the
Melnikov et al. Expires March 2, 2012 [Page 2]
INTERNET DRAFT POP3 over TLS August 30, 2011
registration of the TCP well-known port 995, used with POP3S.
RFC 6186 [RFC6186] specifies the way to use DNS SRV records [RFC2782]
for locating information about email access services. It supports
both POP3S and the aforementioned POP3 upgraded to TLS. For more
information, refer to Section 3.3 of RFC 6186.
1.1. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
Terminology from RFC 1939 [RFC1939] is used in this document.
The "POP3S transaction" refers to the POP3 transaction established as
described in Section 2.1.
2. POP3 over TLS Protocol
This section contains the technical definition of POP3 over TLS
protocol (POP3S).
2.1. Connection Establishment and User Authentication
This section describes how to establish POP3S transaction.
First, the client first establishes the TCP connection [RFC0793] to
the server on the 995 port, or other, if explicitly mentioned. As
soon as successful connection is established, the TLS negotiation
[RFC5246] SHALL be preformed. RFC nnnn [I-D.melnikov-email-tls-
certs] describes the procedure which MUST be followed by the clients
to verify the server's certificate. Upon successful negotiation all
data SHALL be sent under TLS layer, as defined in Section 2.2.
Unsuccessful TLS negotiation SHALL lead to termination of TCP
connection.
As soon as successful TLS layer connection is established, the server
sends the greeting line, as defined by RFC 1939. Both the server and
the client MUST enter AUTHORIZATION state then.
Next, the client should authorize itself to the server. If there is
a bilateral convention between the parties regarding authorization
using X.509 certificate, the client SHOULD first try to authorize
itself using SASL EXTERNAL mechanism, which is defined in Appendix A
of RFC 4422 [RFC4422]. For this purpose, the AUTH command [RFC5034]
SHALL be used. (Correspondingly, those servers and clients which
support authentication using X.509 certificates MUST support the SASL
EXTERNAL mechanism.) Servers that lack configuration to accept an
Melnikov et al. Expires March 2, 2012 [Page 3]
INTERNET DRAFT POP3 over TLS August 30, 2011
X.509 client certificate for authentication purposes SHOULD NOT send
a CertificateRequest handshake to the client during TLS negotiation.
However, if SASL EXTERNAL authentication fails, or there was no
certificate exchange during TLS negotiation, the client MAY either
close the connection or try a different authentication mechanism
(e.g., USER and PASS commands).
After the client has received the +OK response to the authentication
command, both the client and server MUST enter TRANSACTION state, per
RFC 1939.
SSL 2.0 MUST NOT be used for POP3S; see RFC 6176 [RFC6176] for
details.
2.2. Data Exchange
All the data (explicitly, POP3 commands and responses), upon
successful TLS negotiation, SHALL be sent as TLS "application data".
2.3. Connection Closure
TLS provides the possibility for secure connection closure.
Therefore, upon POP3S transaction closure, the client SHALL initiate
the exchange of TLS close alerts, which should happen before TCP
connection termination. When the server receives the TLS close
alert, it may be sure that no other data will be sent in this
connection. The POP3 client MAY, after sending TLS close alert,
terminate its part of connection without waiting for a response from
the server.
2.4. Default Port
POP3S uses the default port 995. Section 4 updates the IANA
registration for this port.
2.5. Disadvantages of POP3S
Section 7 of RFC 2595 [RFC2595] expresses concerns about use of a
separate port for POP3S. The concern about port usage does not apply
as port 995 was previously registered. RFC 6186 mitigates the other
concerns. The usefulness of POP3S outweighs these flaws so the
statement in section 7 of RFC 2595 discouraging use of POP3S is
rescinded.
3. Security Considerations
POP3S uses TLS [RFC5246] to provide protection from eavesdropping and
Melnikov et al. Expires March 2, 2012 [Page 4]
INTERNET DRAFT POP3 over TLS August 30, 2011
tampering with POP3 protocol content. The security considerations of
TLS [RFC5246] and those related to server identity verification
[RFC6125][I-D.melnikov-email-tls-certs] apply.
4. IANA Considerations
IANA is asked to update the registration of the TCP well-known port
995 using the following template (see RFC 6335 [RFC6335]):
Service Name: pop3s
Transport Protocol: TCP
Assignee: IETF <iesg@ietf.org>
Contact: IESG <iesg@ietf.org>
Description: POP3 over TLS protocol
Reference: RFC xxxx (this document - note to RFC Editor)
Port Number: 995
5. References
5.1. Normative References
[I-D.melnikov-email-tls-certs]
Melnikov, A., "Updated TLS Server Identity Check
Procedure for Email Related Protocols", Work in Progress
(draft-melnikov-email-tls-certs), June 2011.
[RFC0793] Postel, J., "Transmission Control Protocol", STD 7,
RFC 793, September 1981.
[RFC1939] Myers, J. and M. Rose, "Post Office Protocol - Version
3", STD 53, RFC 1939, May 1996.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC4422] Melnikov, A., Ed., and K. Zeilenga, Ed., "Simple
Authentication and Security Layer (SASL)", RFC 4422, June
2006.
[RFC5034] Siemborski, R. and A. Menon-Sen, "The Post Office
Protocol (POP3) Simple Authentication and Security Layer
(SASL) Authentication Mechanism", RFC 5034, July 2007.
Melnikov et al. Expires March 2, 2012 [Page 5]
INTERNET DRAFT POP3 over TLS August 30, 2011
[RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security
(TLS) Protocol Version 1.2", RFC 5246, August 2008.
5.2. Informative References
[RFC2595] Newman, C., "Using TLS with IMAP, POP3 and ACAP",
RFC 2595, June 1999.
[RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H.,
Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext
Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.
[RFC2782] Gulbrandsen, A., Vixie, P., and L. Esibov, "A DNS RR for
specifying the location of services (DNS SRV)", RFC 2782,
February 2000.
[RFC2817] Khare, R. and S. Lawrence, "Upgrading to TLS Within
HTTP/1.1", RFC 2817, May 2000.
[RFC2818] Rescorla, E., "HTTP Over TLS", RFC 2818, May 2000.
[RFC6101] Freier, A., Karlton, P., and P. Kocher, "The Secure
Sockets Layer (SSL) Protocol Version 3.0", RFC 6101,
August 2011.
[RFC6125] Saint-Andre, P. and J. Hodges, "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)", RFC 6125, March 2011.
[RFC6176] Turner, S. and T. Polk, "Prohibiting Secure Sockets Layer
(SSL) Version 2.0", RFC 6176, March 2011.
[RFC6186] Daboo, C., "Use of SRV Records for Locating Email
Submission/Access Services", RFC 6186, March 2011.
[RFC6335] Cotton, M., Eggert, L., Touch, J., Westerlund, M. and S.
Cheshire, "Internet Assigned Numbers Authority (IANA)
Procedures for the Management of the Service Name and
Transport Protocol Port Number Registry", BCP 165, RFC
6335, July 2011.
Appendix A. Acknowledgments
We would like to thank Randall Gellens and Paul Smith for their
discussion of, ideas for and suggestions to this document.
Melnikov et al. Expires March 2, 2012 [Page 6]
INTERNET DRAFT POP3 over TLS August 30, 2011
Authors' Addresses
Alexey Melnikov
Isode Limited
5 Castle Business Village
36 Station Road
Hampton, Middlesex TW12 2BX
UK
EMail: Alexey.Melnikov@isode.com
Chris Newman
Oracle
800 Royal Oaks
Monrovia, CA 91016-6347
US
EMail: chris.newman@oracle.com
Mykyta Yevstifeyev (editor)
8 Kuzovkov St., Apt. 25
Kotovsk
Ukraine
EMail: evnikita2@gmail.com
Melnikov et al. Expires March 2, 2012 [Page 7]