如何让 Postfix 通过特定于发件人的中继而不是智能主机来路由邮件?

如何让 Postfix 通过特定于发件人的中继而不是智能主机来路由邮件?

我需要从特定电子邮件地址发送的所有电子邮件都[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

第一场比赛将被计算在内。

相关内容