在我们的服务器上,spamassassin/exim4 存在一个问题,它会将来自我们的邮件列表软件的电子邮件拦截为垃圾邮件。这是因为(通常)软件 (ecartis) 添加的标题会添加点,使其越过边界。
例如
Mail from [email protected] -> server. 4.0 spam points
Mailing list software -> Exim 4, +2.5 spam point
Exim blocks email as having a score of 6.5
我们已经禁用了通常触发的规则,但想将所有收到的邮件列入白名单。我们已经尝试了一些方法,但都没有用。我们不想提高垃圾邮件分数限制,因为这会让真正的垃圾邮件通过。这可能吗?如果可以,怎么做?
添加到 spamassassin local.cf:
trusted_networks 127/8
触发的 Exim 规则:
否定 垃圾邮件 = Debian-exim:true message = 这封邮件获得了 $spam_score 垃圾邮件分数。 条件 = ${if >{$spam_score_int}{59}{1}{0}}
被拒绝的邮件示例:
2011-12-20 12:04:21 1RcxUb-0002GM-EP H=localhost (xxx.xxx.xx) [127.0.0.1] U=ecartis F= 数据后被拒绝:此邮件获得 6.6 个垃圾邮件分。 .... P 已接收:来自本地主机 ([127.0.0.1] helo=xxx.xxx.xx ident=ecartis) 由 xxx.xxx.xx 使用 esmtp (Exim 4.72) (信封发件人) id 1RcxUb-0002GM-EP;2011 年 12 月 20 日星期二 12:04:21 +0100
答案1
解决方案不是让 spamassassin 正确评分这些邮件,而是首先不要将它们发送给 spamassassin。
您需要预先添加一条规则来明确接受来自批量邮件主机的邮件。
accept hosts = 192.168.0.3
更改192.168.0.3
为您想要允许邮件传入的服务器/网络。
答案2
将邮件保存在 SpamAssassin 主机上。运行它spamassassin -D < themail.eml
并查看它为何获得如此高的分数。