我有一个测试 postfix(2.6.6)服务器,配置为拦截所有出站电子邮件并将其存储在本地,以便开发人员可以测试客户端应用程序的电子邮件功能,而不会向全世界发送垃圾邮件。
该服务器接受发往@local.test的邮件,并接受来自cidr映射表中定义的服务器的邮件:
127.0.0.0/8 OK
10.0.0.0/24 OK
测试服务器有 5 个虚拟用户([电子邮件保护],[电子邮件保护]等),并且 postfix 同时配置为 MTA 和 LDA,如虚拟自述文件。
我可以配置服务器,使用收件人规范类/映射将所有中继邮件重定向到其中一个本地帐户,如中所述这篇博文。
recipient_canonical_classes = envelope_recipient
recipient_canonical_maps = regexp:/etc/postfix/recipient_map
/./ [email protected]
但我现在想做的是根据发送邮件的源服务器的 IP 地址重定向邮件,例如:
10.0.0.1 -> [email protected]
10.0.0.2 -> [email protected]
10.0.0.3 -> [email protected]
这些只有几个,所以我不需要任何动态映射,只需一个简单的配置文件就可以了。
有人知道我该怎么做吗?
谢谢,
答案1
将解决方案从评论转换为 CW
Postfix SMTP 服务器访问表[手册页]支持重定向功能
REDIRECT user@domain
After the message is queued, send the message to the specified
address instead of the intended recipient(s).
Note: this action overrides the FILTER action, and currently
affects all recipients of the message.
将此功能与检查客户端访问将解决你的问题,即
10.0.0.1 REDIRECT [email protected]