技术解析 · 附来源的解答

AWS SES 端点是什么?

AWS SES 端点取决于您的账户所在区域以及连接方式。API 请求的端点格式为 email.region.amazonaws.com,SMTP 的端点格式为 email-smtp.region.amazonaws.com。您必须使用与验证身份时所在区域相对应的端点。

API 端点

AWS SES API 端点按区域划分。例如,如果您的 SES 身份配置在美国东部(弗吉尼亚北部),端点就是 email.us-east-1.amazonaws.com;如果配置在美国西部(俄勒冈),则使用 email.us-west-2.amazonaws.com。这些端点通过 AWS SDK 或 CLI 接收 HTTPS 请求,用于管理身份、发送邮件和配置收信规则。

SMTP 端点

SMTP 端点用于通过简单邮件传输协议发送邮件,格式为 email-smtp.region.amazonaws.com。例如,美国东部(弗吉尼亚北部)的 SMTP 端点是 email-smtp.us-east-1.amazonaws.com。这些端点支持标准的 SMTP 身份验证,根据所用的 TLS 配置,通常通过 25、465 或 587 端口访问。

区域选择

您无法通过尚未验证域名或邮箱地址的区域端点发送邮件。如果尝试使用其他区域的端点,API 会返回 InvalidParameterValue 或类似错误。请始终确保应用配置与您获得 SES 生产环境访问权限的区域一致。

连接安全

连接 SES 端点时,AWS 要求使用安全连接。对于 SMTP,这意味着使用 STARTTLS 或隐式 TLS;对于 API 调用,则必须使用 HTTPS。开发者可以使用 SendHQ 免费工具(https://sendhq.cc/tools)检查 SPF 和 DKIM 等 DNS 记录是否与 SES 配置正确对齐,以确保投递成功。

端点故障排查

如果遇到连接超时,请确认您的网络允许所选端口的出站流量。云服务商经常封锁 25 端口以防止垃圾邮件。请使用 587 端口搭配 STARTTLS,或使用 465 端口搭配隐式 TLS。请确保您的 AWS IAM 凭据在对应区域端点上拥有 ses:SendRawEmail 或 ses:SendEmail 权限。

团队常问的问题

AWS SES 有全局端点吗?

没有,AWS SES 不提供单一的全局端点。您必须指定已验证身份所在区域的端点。

SES SMTP 端点应使用哪个端口?

使用 587 端口搭配 STARTTLS,或使用 465 端口搭配隐式 TLS。25 端口也可用,但经常被 ISP 和云服务商封锁。

如何查到我的 SES 所在区域?

在 AWS 管理控制台的 SES 控制台页面中查看。区域显示在控制台右上角或 URL 中。

如果使用了错误的端点会怎样?

请求要么无法建立连接,要么返回一个错误,提示该身份未在此区域中验证。

一手资料