Postfix:将所有传入的邮件中继到另一个主机

我有两个主机。 一个是mail1.example.com ,另一个是mail2.example.com 。 每个服务器都有自己的公用IPv4地址,但它们位于不同的地理位置。 域名具有mail1 MX作为邮件服务器。 我需要将所有传入的邮件转发到mail2

我试图通过编辑Postfix的main.cf来实现一个传输地图,但没有成功。 什么是正确的方法来做到这一点? 每个服务器有什么要求?

你不一定需要交通地图,尽pipe你可以这样做。 在main.cf中指定relayhost = mail2应该是您需要的邮件。

您还需要确保mail1不认为它是涉及任何域的最终目标系统。 即把你在relaydomains处理域,绝对不是在我的relaydomains

http://www.postfix.org/STANDARD_CONFIGURATION_README.html#firewall中有一个相当复杂的例子,这很可能是合适的,并且使用交通图。 它关心的是避免传递指定的relaydon的子域,所以可能是矫枉过正的。

我会担心这种内部中继会大大减less您的垃圾邮件处理选项。 内部主机不能轻易根据远程IP做出决定,不能使用灰名单,不能在发送下一个邮件命令之前仔细检查远程主机是否等待来自主机的响应线路等。没有关于什么账户存在的信息等等。 如果网关主机接受电子邮件,结果是无法送达,那么你必须通过电子邮件将你的错误发送到发送地址,这通常被称为“反向散射”(确保你熟悉那里的问题)。