将 Amazon SES 与 Exim 集成 - Amazon Simple Email Service

将 Amazon SES 与 Exim 集成

Exim 是一个高度灵活且可配置的邮件传输代理 (MTA)。要了解有关 Exim 的更多信息,请访问 Exim 网站

注意

Exim 是第三方应用程序,不由 Amazon Web Services 开发或支持。本部分中的步骤仅供参考,如有更改,恕不另行通知。

将 Exim 配置为通过 Amazon SES 发送电子邮件

  1. 在文本编辑器中,打开文件 /etc/exim.conf.local。如果该文件不存在,请从 /etc/exim4/exim4.conf.template 复制模板。

  2. /etc/exim.conf.local 中,进行以下更改:

    1. routers 部分中,在 begin routers 行后添加以下内容:

      send_via_ses: driver = manualroute domains = ! +local_domains transport = ses_smtp route_list = * email-smtp.us-west-2.amazonaws.com;

      在前面的代码中,将 email-smtp.us-west-2.amazonaws.com 替换为要用于发送消息的 SMTP 端点。有关更多信息,请参阅 区域和 Amazon SES

    2. transports 部分中,在 begin transports 行后添加以下内容:

      ses_smtp: driver = smtp port = 587 hosts_require_auth = * hosts_require_tls = *
    3. authenticators 部分中,在 begin authenticators 行后添加以下内容:

      ses_login: driver = plaintext public_name = LOGIN client_send = : USERNAME : PASSWORD

      在前面的代码中,将 USERNAME 替换为您的 SMTP 用户名,将 PASSWORD 替换为您的 SMTP 密码。

      重要

      您的 SMTP 凭证与您的 AWS 访问密钥 ID 和秘密访问密钥不同。有关获取您的 SMTP 凭证的信息,请参阅获取 Amazon SES SMTP 凭证

  3. 保存 /etc/exim.conf.local.

  4. 当您完成配置更新后,输入以下命令以重新启动 Exim。

    sudo /etc/init.d/exim4 restart
    注意

    根据所使用的操作系统,此命令可能有所不同。

  5. 在命令行处,完成以下步骤以发送测试消息:

    1. 输入以下命令:

      exim -v sender@example.com

      在前面的命令中,将 recipient@example.com 替换为您要将邮件发送到的地址。

    2. 输入以下内容,在每行末尾按 Enter

      From: sender@example.com Subject: Test message This is a test. .

      在前面的命令中,将 sender@example.com 替换为您要从中发送邮件的地址。

      当您在最后一个句点 (.) 之后按 Enter 时,Exim 会开始与 SMTP 服务器的对话。如果在发送消息后连接仍保持打开状态,请按 Ctrl+D 将其关闭。

      提示

      如果该邮件未送达,请查看系统的邮件日志中是否有错误。Exim 邮件日志通常位于 /var/log/exim4/mainlog