2.8 KiB
POP3 and POP3S
Bongo keeps POP3 for simple and older mail clients while using the same accounts, authentication policy, message files, flags, and per-user mail quota as IMAP and Webmail. POP3 is an access protocol only: SMTP remains responsible for message submission.
Listeners and TLS
The suffixless pop3 configuration document controls the two listeners:
{
"version": 1,
"port": 110,
"port_ssl": 995,
"allow_legacy_tls": false,
"proxy_protocol_enabled": false,
"proxy_protocol_networks": []
}
Port 110 offers STLS before authentication. Port 995 uses implicit TLS.
Password and GNU GSASL mechanisms are made available only on a protected
connection under the secure default. Enabling allow_legacy_tls is an
explicit compatibility exception for obsolete clients; current TLS is still
negotiated when both peers support it.
PROXY protocol must remain disabled unless a trusted TCP proxy is actually in
front of POP3. Enabling it requires at least one exact trusted IPv4 address or
CIDR in proxy_protocol_networks; ordinary clients must never be included.
Commands and capabilities
The server implements the normal authorization and transaction commands:
USER, PASS, AUTH, APOP, STAT, LIST, UIDL, RETR, TOP, DELE,
RSET, NOOP, CAPA, UTF8, STLS, and QUIT. Multiline replies apply
POP3 dot transparency and canonical CRLF termination even when a stored
message was read in chunks.
CAPA reports the implemented TOP, RESP-CODES, AUTH-RESP-CODE,
PIPELINING, EXPIRE NEVER, UIDL, and UTF8 features. STLS, USER, and
the SASL mechanism list are state-dependent. After UTF8 succeeds, STLS
is no longer offered and is rejected, preventing already-buffered cleartext
UTF-8 session state from crossing the TLS boundary.
Deletion and quota semantics
DELE marks a message only for the current POP3 transaction. RSET or a
disconnect leaves it in the mailbox; a successful QUIT commits the marked
deletions. Storage is therefore released only after that commit. POP3 has no
standard quota query command, but delivery to the same account is still
limited by the shared Store quota described in quotas.md.
Use IMAP or Webmail when a client needs server-side folders, flags, searching, or concurrent mailbox changes. POP3 clients which delete downloaded mail should be tested carefully before enabling that option for a large account.
Operational checks
After changing the listener or TLS policy, validate and synchronize the
configuration, restart the agent through bongo-manager, and test both the
clear listener's STLS transition and a direct POP3S login. Also verify
STAT, LIST, RETR, TOP, UIDL, deletion rollback on disconnect, and
deletion commit on QUIT. The release gate is recorded under POP-01 through
POP-06 in release-testing-0.7.md.