Postfix 设置发送给未知用户

Postfix 设置发送给未知用户

一直尝试寻找类似的设置,但找不到或者根本不知道要搜索什么。

场景:我们刚刚接管了 abc.com 电子邮件运营,但还有另一台服务器也处理该域的几个帐户。MX 现在指向我们,但如果这里没有该域的用户,我们仍然想尝试将邮件发送到旧服务器,如果收件人不存在,它可以退回邮件。

步骤如下:

电子邮件进来后,检查该域名是否是我们处理的,否则拒绝。

检查电子邮件地址是否存在于 LDAP 中,如果存在,则将电子邮件发送到指定的邮件服务器。

如果 LDAP 中不存在该邮件,请检查辅助文件中是否存在要发送该邮件的域特定服务器。

如果它在 LDAP 中不存在并且辅助文件中未指定域,则将其退回。

我正在使用 mydestination 进行域检查,并使用 alias_maps 进行 ldap 查找,两者都可以。

Postfix 可以做到这一点吗?

答案1

在您的 中添加并设置abc.com为空(以禁用收件人验证)。假设在您的服务器中,并且mydestinationlocal_recipient_mapsmain.cf[email protected][email protected]remoteabc.com

#/etc/postfix/main.cf
#...
mydestination = $myhostname, localhost.$mydomain, localhost abc.com 
local_recipient_maps =
transport_maps = hash:/etc/postfix/trans
alias_maps = hash:/etc/aliases
#...
#/etc/postfix/trans
#...
[email protected] local: 
[email protected] local: 
# send all other user mails to remote server
abc.com smtp:remoteabc.com:25
#...
#/etc/aliases
userhere:         some_unix_user

此处hash使用查找表transport_maps。您可以使用任何您选择的查找类型。希望对您有所帮助。

相关内容