我已配置了带有 Spamassassin 和 spamass-milter 的 postfix。分数高于 4.0 的电子邮件应被视为垃圾邮件并被拒绝。这是我的 local.conf
rewrite_header Subject ***** SPAM _SCORE_ *****
report_safe 0
required_score 4.0
use_bayes 1
use_bayes_rules 1
bayes_auto_learn 1
skip_rbl_checks 0
下面是我的 postfix 的 master.cf:
smtp inet n - y - - smtpd
-o content_filter=spamassassin
smtp unix - - y - - smtp
...
spamassassin unix - n n - - pipe
user=spamd argv=/usr/bin/spamc -f -e
/usr/sbin/sendmail -oi -f ${sender} ${recipient}
我在 postfix header_checks 中设置它应该丢弃所有标记为垃圾邮件的电子邮件。
/^X-Spam-Status: Yes/ DISCARD
另外,在 spamass-milter 中我添加了设置,所有分数高于 9.0 的电子邮件都将被拒绝。
问题是,在向服务器发送一封正确的电子邮件(比如说从我的个人 Gmail 帐户)并转发它(比如说发送到我的第二个 Gmail 帐户)后,该邮件的分数低于阈值,但邮件头不断被重写并给出大于 4.0 的分数——该邮件没有被丢弃/拒绝,而是被转发时带有烦人的邮件头。因此,尽管所有邮件都被视为非垃圾邮件,但它们都被标记为 SPAM 邮件头。