使用后缀和智能主机转发到别名的外部电子邮件

Forwarding bounces to an alias' external email with postfix and a smarthost

我正在 AWS 云中设置 Web 应用程序以通过 SES 发送邮件。它应该使用配置为智能主机的 AWS SES 服务器使用 postfix 发送通知。该应用程序使用邮政管理员帐户发送邮件。发送电子邮件工作正常,但我需要配置退回处理。

应用程序发送了一封电子邮件,如果已送达,则一切正常。但很明显,偶尔会有一封电子邮件退回。

由于网络应用程序不包括对收到邮件的任何处理,而且我不想静静地删除退回邮件,我选择通过 [=12= 将邮政局长的帐户转发到外部电子邮件地址].如果我现在直接向 postmaster 发送电子邮件,它会正确发送到该地址。但是,如果 postfix 收到退回消息,它将尝试转发退回消息,并且智能主机以某种方式拒绝使用 501 Invalid From 命令的(现在传出的)退回消息。如果我删除别名,退回邮件会正确发送到本地帐户。

知道这是否可以解决吗?

后缀日志的相关部分:

外发邮件:

postfix/pickup[1909]: 7619943922: uid=1000 from=<postmaster@domain.com>
postfix/cleanup[2164]: 7619943922: message-id=<messageid@mail.domain.com>
postfix/qmgr[565]: 7619943922: from=<postmaster@domain.com>, size=357, nrcpt=1 (queue active)
postfix/smtp[2166]: 7619943922: to=<bounce@simulator.amazonses.com>, relay=email-smtp.eu-west-1.amazonaws.com[54.72.40.32]:25, status=sent (250 Ok ) #irrelevant things cut out
postfix/qmgr[565]: 7619943922: removed

传入的退回和应该转发时的错误:

postfix/smtpd[2158]: connect from a3-182.smtp-out.eu-west-1.amazonses.com[54.240.3.182]
postfix/smtpd[2158]: 6B7E44385A: client=a3-182.smtp-out.eu-west-1.amazonses.com[54.240.3.182]
postfix/cleanup[2164]: 6B7E44385A: message-id=<someid@eu-west-1.amazonses.com>
postfix/qmgr[565]: 6B7E44385A: from=<>, size=2305, nrcpt=1 (queue active)
postfix/cleanup[2164]: 6D93E43922: message-id=<someid@eu-west-1.amazonses.com>
postfix/qmgr[565]: 6D93E43922: from=<>, size=2432, nrcpt=1 (queue active)
postfix/local[2167]: 6B7E44385A: to=<postmaster@domain.com>, relay=local, delay=0.01, delays=0.01/0/0/0, dsn=2.0.0, status=sent (forwarded as 6D93E43922)
postfix/qmgr[565]: 6B7E44385A: removed
postfix/smtp[2166]: 6D93E43922: to=<someemail@gmail.com>, orig_to=<postmaster@domain.com>, relay=email-smtp.eu-west-1.amazonaws.com[52.213.60.48]:25, delay=0.09, delays=0/0/0.09/0, dsn=5.0.0, status=bounced (host email-smtp.eu-west-1.amazonaws.com[52.213.60.48] said: 501 Invalid MAIL FROM address provided (in reply to MAIL FROM command))
postfix/qmgr[565]: 6D93E43922: removed

我建议您使用集成到 Amazon SES 中的退回处理,而不是在发送主机上处理退回,它提供了将所有退回转发到您选择的电子邮件地址(或 SNS 主题)的能力。有关详细信息,请查看文档:https://docs.aws.amazon.com/ses/latest/DeveloperGuide/monitor-sending-using-notifications.html

该方法的一个优点是您不必依赖自己的基础设施来转发退回邮件,而另一个优点是您可以用同样的方式处理来自 ISP 的投诉。