postfix:将邮件本地发送到特定的电子邮件地址,并将其余的邮件发送到中继主机

postfix:将邮件本地发送到特定的电子邮件地址,并将其余的邮件发送到中继主机

我想用 postfix 实现以下功能:

几乎所有外发邮件都应通过中继主机发送,在 main.cf 中配置

relayhost = my.mailserver

有一个特定的电子邮件地址([电子邮件保护]),我希望电子邮件在本地发送。我在机器上设置了一个本地帐户以匹配电子邮件地址,并在 main.cf 中的 mydestination 属性中添加了“mydomain.com”。然后,postfix 当然会尝试在本地向 @mydomain.com 发送每封电子邮件,并将它们退回,因为相应的用户不存在。

问题适用于本地帐户的混合 Gmail MX + Postfix似乎有些相关(尽管更复杂)。

答案1

我最终弄清楚了传输配置文件中的正确语法:

将以下内容添加到 /etc/posfix/transport:

[email protected] :
*    relay:[my.mailserver]

然后运行

postmap transport
postfix reload

答案2

正确的方法是将以下内容添加到/etc/posfix/transport

[email protected] local:
*     relay:[my.mailserver]

然后将以下内容添加到/etc/postfix/main.cf

transport_maps = hash:/etc/postfix/transport

然后运行:

sudo postmap hash:/etc/postfix/transport
sudo /etc/init.d/postfix restart

相关内容