跳至正文

AWS的SES配置

要在 Amazon Web Services (AWS) 的 Simple Email Service (SES) 中使用自己的域名发送电子邮件,你需要完成以下步骤:

1. 验证域名

AWS SES 要求你验证你的域名,以确保你有权限通过 SES 发送电子邮件。以下是如何验证你的域名的步骤:

1.1. 登录 AWS 管理控制台

1.2. 添加并验证域名

  • 在 SES 控制台左侧的导航栏中,点击 Domains,然后点击 Verify a New Domain
  • 在弹出的页面中,输入你想使用的域名,例如 yourdomain.com
  • 选中 Generate DKIM Settings,这将为你自动生成 DKIM(DomainKeys Identified Mail)设置,帮助提高电子邮件送达率。

1.3. 获取 DNS 设置

  • SES 会生成一些 DNS 记录(包括 TXT 记录用于验证,CNAME 记录用于 DKIM)。
  • 复制这些记录,并将它们添加到你域名的 DNS 管理系统中。例如,如果你使用 Cloudflare 或 Route 53 管理 DNS,你需要登录相应的平台并将这些记录粘贴到 DNS 设置中。

1.4. 等待验证

  • DNS 记录更新后,验证过程可能需要几分钟到几小时。你可以在 SES 控制台查看域名的验证状态。

2. 配置 SPF 和 DKIM 记录

为了增加电子邮件的送达率,减少被标记为垃圾邮件的风险,建议你配置 SPF(Sender Policy Framework)和 DKIM(DomainKeys Identified Mail)记录。

2.1. 配置 SPF 记录

  • SES 会给出一个 TXT 记录,用于配置 SPF。该记录的值通常为类似以下内容:
    v=spf1 include:amazonses.com ~all
  • 你需要将此 TXT 记录添加到你的 DNS 配置中。

2.2. 配置 DKIM 记录

  • 如果你在 SES 中启用了 DKIM,SES 会生成三个 CNAME 记录。你需要将这些 CNAME 记录添加到 DNS 中。
  • 这些记录将使得 SES 能够在发送电子邮件时对邮件进行数字签名,增强邮件的送达率和合法性。

3. 请求取消SES的发送限制

AWS SES 在“沙盒模式”下,发送邮件的地址和域名需要经过验证,并且每天有发送邮件的数量限制。如果你要发送到未验证的地址,或者发送大量电子邮件,你需要将账户移出沙盒。

3.1. 提交申请

  • 登录 AWS 管理控制台。
  • 打开 SES 控制台,点击 Sending Statistics
  • 找到并点击 Request a Sending Limit Increase
  • 按照页面提示填写表单,详细说明你如何使用 SES 以及你需要的发送限制。

4. 配置发件人电子邮件地址

4.1. 验证单个电子邮件地址

除了验证域名,你也可以直接验证某个发件人邮箱地址。可以通过以下步骤验证:

  • 在 SES 控制台左侧导航栏中,点击 Email Addresses
  • 点击 Verify a New Email Address,输入要使用的邮箱地址。
  • AWS SES 将发送一封验证邮件到该邮箱,点击邮件中的链接以完成验证。

4.2. 使用域名下的任意邮箱地址

如果你已经验证了整个域名(比如 yourdomain.com),那么你可以使用该域名下的任何电子邮件地址(如 noreply@yourdomain.com)发送邮件,而无需单独验证每个地址。

5. 在应用中使用 SES 发送邮件

你可以通过以下几种方式将 SES 集成到你的应用中,以发送电子邮件:

5.1. 通过 SMTP 使用 SES

  • 使用 AWS SES 提供的 SMTP 端点发送电子邮件。你可以在 SES 控制台中创建 SMTP 凭据(用户名和密码),并使用以下 SMTP 服务器信息:
    • SMTP 主机email-smtp.us-east-1.amazonaws.com(替换为你的区域)
    • 端口:587(TLS),465(SSL),或25(明文)
  • 将此信息配置到应用的 SMTP 设置中。

5.2. 通过 AWS SDK 使用 SES

  • AWS 提供的 SDK(如 boto3 for Python 或 AWS SDK for JavaScript)可以方便地与 SES 集成。你可以通过 API 调用 send_emailsend_raw_email 来发送邮件。

6. 测试电子邮件发送

在配置完成之后,使用你验证的域名或电子邮件地址发送测试邮件。你可以通过 AWS SES 控制台或者你的应用程序发送一封测试邮件,检查邮件是否能够顺利到达收件人的邮箱。

总结

  1. 验证域名:通过 SES 验证域名,确保你有权限发送邮件。
  2. 配置 SPF 和 DKIM:通过 DNS 配置这些记录,提升送达率和邮件的合法性。
  3. 取消沙盒限制:请求 AWS 提升邮件发送配额。
  4. 配置 SMTP 或 SDK:将 SES 集成到你的应用程序中,开始发送电子邮件。

这套流程将帮助你通过 AWS SES 使用自定义域名来发送可靠的电子邮件。

标签: