![如何让 Postfix 通过特定于发件人的中继而不是智能主机来路由邮件?](https://linux22.com/image/766247/%E5%A6%82%E4%BD%95%E8%AE%A9%20Postfix%20%E9%80%9A%E8%BF%87%E7%89%B9%E5%AE%9A%E4%BA%8E%E5%8F%91%E4%BB%B6%E4%BA%BA%E7%9A%84%E4%B8%AD%E7%BB%A7%E8%80%8C%E4%B8%8D%E6%98%AF%E6%99%BA%E8%83%BD%E4%B8%BB%E6%9C%BA%E6%9D%A5%E8%B7%AF%E7%94%B1%E9%82%AE%E4%BB%B6%EF%BC%9F.png)
我需要从特定电子邮件地址发送的所有电子邮件都[email protected]
通过特定智能主机(我们的 365 租户)进行路由。我已通过在 main.cf 中进行设置来设置它:
sender_dependent_relayhost_maps = hash:/etc/postfix/relay_by_sender
在relay_by_sender中它的定义如下:
[email protected] [example-com.mail.protection.outlook.com]:25
设置完成后,我运行postmap /etc/postfix/relay_by_sender
并重新启动了 postfix。
当我[email protected]
通过 postfix 发送电子邮件时,它们仍然会按照我的文件中定义的规则进行路由transport
,该规则会将所有电子邮件通过另一个智能主机发送出站。
我认为我遇到了规则优先级问题,但不确定如何解决。任何帮助都将不胜感激。
答案1
您可以通过使用文件来处理所有内容,从而避免优先的传输规则relay_by_sender
:
# Exceptions
[email protected] [example-com.mail.protection.outlook.com]:25
# Defaults
@example.com [smarthost.example.net]:25
@example.org [smarthost.example.net]:25
第一场比赛将被计算在内。