允许 Postfix 中继某些主机

允许 Postfix 中继某些主机

我在测试环境中设置了 Postfix,与我们的 LAN 隔离,并为测试环境中的主机进行中继。最初,我让所有出站电子邮件通过 procmail 汇集到 postfix 框上的单个帐户中(开发人员通过 Dovecot 访问)。这允许开发人员测试发送电子邮件通知的生产代码,而无需电子邮件实际到达其预期收件人。

现在我需要真正允许一个主机中继到现实世界而不是“漏斗”帐户。我仍然需要“撒谎”并接受来自任何发件人到任何地方的电子邮件(当然是在测试环境中),并将其汇入漏斗用户帐户。我甚至不确定要谷歌搜索什么,因为这不是典型的 postfix 设置。鉴于以下配置,我如何为单个发送主机添加例外?

更新 值得注意的是“重复问题”目前不包含可行的示例postfix 2.9.6-1~12.04

postconf: warning: /etc/postfix/master.cf: unused parameter: smtpd_client_restriction=check
/usr/sbin/postconf: warning: /etc/postfix/master.cf: unused parameter: smtpd_client_restriction=check

我也不能确定它是否真的是重复的,因为答案似乎是根据用户@域配对。我想根据连接主机的 IP 地址或 DNS 主机名。我已向链接的“重复”发布了一个问题,试图解决该问题。

我的主配置文件看起来像这样:

myhostname           = cliff.blah.net
alias_database       = hash:/etc/aliases
mydestination        = regexp:/etc/postfix/virtual_domains
virtual_alias_maps   = regexp:/etc/postfix/virtual
mynetworks           = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 10.2.1.0/24
mailbox_command      = /usr/bin/procmail
relay_domains        = .blah.net
smtpd_recipient_restrictions = permit_mynetworks, permit_auth_destination, reject
local_recipient_maps         =

虚拟的虚拟域在这里:

# cat virtual
/@/     funnelmail

# cat virtual_domains
/.*/ MATCH

更新2 我无法让上面链接中的示例运行。也许是因为 Postfix 版本不同,或者是拼写错误太多,我不知道。我确实让多个实例在同一个服务器上的不同端口上运行,但无法在这里发布我的解决方案,因为有人关闭了该帖子,所以祝你好运。

答案1

如果我理解你的问题,我认为你的答案是这里重写除一个收件人之外的所有外发电子邮件的收件人。它展示了如何根据收件人进行路由,并且对后缀映射有许多参考。

这个问题询问基于 IP 的路由。回复者说这是不可能的。我认为第一个是最有可能解决问题的方法。

相关内容