技术解析 · 附来源的解答

SMTP 使用哪个端口?SMTP 标准端口指南

SMTP 使用 25 端口进行服务器之间的中继,使用 587 端口通过 STARTTLS 提交邮件,使用 465 端口进行隐式 TLS 连接。应使用哪个端口,取决于您是从客户端向服务器发送邮件,还是在两台邮件服务器之间传送邮件。

25 端口:用于中继

25 端口是 SMTP 最初的标准端口,主要用于在邮件传输代理(MTA)之间中继邮件。大多数家庭宽带互联网服务提供商(ISP)和云服务商会封锁 25 端口的出站流量,以防止被入侵的设备发送垃圾邮件。开发者应避免使用 25 端口从客户端提交邮件,而应将其保留给服务器之间的通信。

587 端口:用于提交

587 端口是现代的邮件提交标准端口,供邮件客户端向提交服务器发送邮件。该端口通常使用 STARTTLS:连接先以未加密方式开始,再升级为安全的 TLS 连接。它是应用集成和第三方 SMTP 服务的推荐端口。

465 端口:用于隐式 TLS

465 端口最初被指定用于 SMTPS。虽然它一度被弃用,但仍被广泛用于隐式 TLS,即从第一个数据包起连接就已加密。许多旧系统和特定服务商仍要求使用 465 端口进行安全传输,不过对于新的实现,通常更推荐 587 端口。

选择合适的端口

要选择正确的端口,请先明确您在邮件流中的角色。如果您要配置一台接收其他服务器邮件的服务器,请使用 25 端口;如果您要编写代码,通过 API 或 SMTP 中继发送邮件,请使用 587 端口。无论使用哪个端口,您都可以借助 SendHQ 免费工具检查 DNS 和身份验证设置,确保邮件被接受。

排查连接问题

25 端口连接超时通常意味着被 ISP 封锁。如果 587 端口连接失败,请确认客户端支持 STARTTLS,并且防火墙允许该端口的出站流量。请始终确保身份验证凭据正确,因为许多服务器会拒绝在提交端口上没有有效 SMTP AUTH 的连接。

团队常问的问题

25 端口安全吗?

25 端口默认并不安全。虽然它可以使用 STARTTLS,但经常被 ISP 封锁以防止垃圾邮件,不建议用于客户端提交邮件。

465 端口和 587 端口有什么区别?

465 端口使用隐式 TLS,连接会立即加密。587 端口使用显式 TLS,通过 STARTTLS 命令将明文连接升级为加密连接。

为什么我的 SMTP 连接会超时?

超时通常是由防火墙规则或 ISP 对 25 端口的封锁引起的。对于开发者来说,改用 587 端口通常就能解决这些连接问题。

一手资料