BATV过滤Postfix和邮递员

显然Postfix本身不支持BATV标签。 我们希望从FROM字段中去掉这些prvs=标签,因为我们认为我们的邮递员设置有问题(将发件人视为非成员)。

我有一个ISPConfig 3邮件服务器设置。 这包括amavisd-new和clamav。 我安装了dkimproxy ,只是为了validation标签,并把结果放在邮件头(我不希望它拒绝邮件)。

我应该提到我尝试过batv-milter,但是这给了一个错误(“smfi_main失败”)。 我也看了batv-proxy.pl 。

但是这个解决scheme对于Postfix来说似乎更好,build议和amavisd-new结合使用。 这也是在Debian回购站!

我曾尝试设置dkimproxy作为后缀smtpd_proxy_filter但随后连接到dkimproxy的TCP端口(在我的情况下是127.0.0.1:10026)超时。

现在我不知道是否连接到dkimproxy超时,或者如果它是中继连接(我发送到amavisd新,根据下面的configuration)超时。 对于dkimproxy,似乎没有任何日志logging。

 # set correct hostname hostname $fqdn-of-my-mailserver # specify what address/port DKIMproxy should listen on listen 127.0.0.1:10026 # specify what address/port DKIMproxy forwards mail to relay 127.0.0.1:10024 

难道我做错了什么?

有没有人用BATV过滤和Postfix成功?

也许这个情况和你的一样。 无论如何,你可以按照这个batv页面所述的步骤修复它。

main.cf ,定义

 canonical_maps = regexp:/etc/postfix/batv.regexp 

/etc/postfix/batv.regexp ,添加这一行

 /^prvs=[0-9]{4}[0-9A-Fa-f]{6}=(.*)$/ $1 

如果不起作用,请提供您在系统中遇到的batv地址的示例。


对于副作用。 请看看作者的笔记

请注意,这个正则表可能会影响其他邮件进入您的邮件系统,特别是通过提取提交 。 如果您没有将模式限制到您自己的本地域(通常在mydestinationvirtual_alias_domainsvirtual_mailbox_domains中定义),则可能会无意中将BATV标签从外部收件人的地址上剥离。 不幸的是,仅仅为了内部生成的反弹和通知而定义cleanup_service_name似乎是不可能的。 也许可以在master.conf中为所有其他服务(即forward,pickup,qmqpd,smtpd)定义一个覆盖,然而,这只会将main.cf中的服务留给内部生成的消息。 不过,我还没有深入了解这一点。