Protocol · RFC 5321 · 更新于 May 2026

SMTP

Simple Mail Transfer Protocol

SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)是服务器之间传递邮件消息的互联网标准,由 RFC 5321 定义。它是每一次邮件发送背后的 wire protocol — 包括 AcelleMail 派发的每一个营销活动。

§1

定义

SMTP(Simple Mail Transfer Protocol)是服务器之间传递电子邮件的互联网标准,最初由 RFC 5321(2008 年,取代 RFC 821)定义。它是基于文本的客户端-服务器协议:发件方服务器(SMTP 客户端)向收件方服务器(SMTP 服务器)开启 TCP 连接,通过一组固定的命令序列 — HELO/EHLOMAIL FROMRCPT TODATAQUIT — 完成单条消息的传输。

§2

端口与 TLS

常用的 TCP 端口有三个:

  • 端口 25 — 服务器之间的 SMTP relay。大多数消费级 ISP 屏蔽 25 端口的出站流量,普通终端用户一般不会用到。
  • 端口 587(Submission) — 经过认证的消息提交端口(RFC 6409),通过 STARTTLS 升级到 TLS。
  • 端口 465(SMTPS) — 连接建立时立即启用隐式 TLS,在 RFC 8314 中被正式恢复使用。

现代运营方在 587 或 465 上完成认证;ESP 通常把这两者都称为 "SMTP credentials"。

§3

AcelleMail 如何使用 SMTP

AcelleMail 把 wire protocol 封装在一个多态的 SendingDriver 契约背后(app/SendingServers/Drivers/SendingDriver.php)。内置驱动包含一个通用 SMTP 驱动 — 按 RFC 5321 与任何合规服务器对话;此外还有针对 Amazon SES(AmazonSmtpDriver.php)、Mailgun、SendGrid、SparkPost 等的 vendor 专用 SMTP 驱动。Vendor 驱动复用同一套 SMTP 交互,但预先填好 credentials 和 endpoint — 运营方只需选择 "Amazon SES SMTP",不必手动键入 email-smtp.us-east-1.amazonaws.com

对于只提供 REST API、没有 SMTP endpoint 的新 vendor,AcelleMail 也支持 API 驱动路径 — 相同的 SendingDriver 契约,不同的传输层。

§4

SMTP 与 ESMTP

现今几乎所有服务器讲的都是 ESMTP(Extended SMTP,RFC 5321 §2.2)— EHLO 问候时会通告可选扩展,例如 SIZE(单条消息字节上限)、8BITMIME(8-bit clean 传输)、STARTTLS(机会性 TLS 升级)、AUTH(SASL 认证)。日常口语里说的 "SMTP" 在现代语境下几乎都是指 ESMTP。

来源

本页每一项主张都追溯到下列之一。

想在生产环境运行这个?

AcelleMail 是一次性授权的自托管邮件平台,对本术语表中的每一项术语都提供一等公民支持。无任何订阅费、不按订阅者计费、完整源代码。

试用在线演示