如何配置 Postfix 以在转发邮件时忽略中继主机?
我目前使用中继主机通过外部 SMTP 服务发送所有外发电子邮件:
# /etc/postfix/main.cf
relayhost = [smtp.mandrillapp.com]
我有几个域名配置为通过备用 SMTP 服务发送:
# /etc/postfix/relayhost_maps
@domain1 [email-smtp.us-east-1.amazonaws.com]
@domain2 [email-smtp.us-east-1.amazonaws.com]
但是,我的一些客户将收到的电子邮件转发到其他帐户。我不想通过外部 SMTP 服务发送转发的电子邮件,而是希望直接通过本地主机中继。
例如,我的机器接受电子邮件为'[电子邮件保护]',客户端已配置为转发到'[电子邮件保护]'。我正在寻找一种方法来将所有电子邮件转发到'[电子邮件保护]' 由我的服务器直接中继 - 而不是由我的外部 SMTP 服务中继。
我认为传输图接近我的需要,并且我已经找到了很多关于如何使用传输映射路由到外部 SMTP 的信息,但我不知道如何在转发邮件时仅从本地主机中继。
我以为我在这里有一个解决方案:
... 但是当我尝试时,我给自己发送了一封电子邮件,并在我的计算机和 SMTP 网关之间的某种循环中收到了 2,500 次,因此不得不快速停止 Postfix!
所以,基本上我想通过各种 SMTP 服务中继来自本地主机的转发消息和未转发的消息。
答案1
有一个
transport_maps=hash:/etc/postfix/transport
在 main.cf 中行,然后添加到 /etc/postfix/transport :
[email protected] smtp:
postmap /etc/postfix/transport
如果您更改了 main.cf ,请运行并重新加载 postfix。