我在CentOS上运行一个Postfix邮件服务器,并试图启用Spamassassin的bayesfilter,但是我似乎错过了一些东西。
我们正在运行amavisd新2.9.1:
Name : amavisd-new Arch : noarch Version : 2.9.1 Release : 2.el6 Size : 3.0 M Repo : installed From repo : epel
….与Spamassassin 3.3.1:
Installed Packages Name : spamassassin Arch : x86_64 Version : 3.3.1 Release : 3.el6 Size : 3.1 M Repo : installed From repo : updates
从我所知道的,我唯一的spamassassinconfiguration文件位于/ etc / mail / spamassassin。
该目录中的local.cf文件包含以下内容:
# These values can be overridden by editing ~/.spamassassin/user_prefs.cf # (see spamassassin(1) for details) # These should be safe assumptions and allow for simple visual sifting # without risking lost emails. required_hits 5 report_safe 0 rewrite_header Subject [SPAM] use_bayes 1 bayes_auto_learn 1 bayes_auto_expire 0 bayes_path /var/amavis/var/.spamassassin/
amavisd.conf位于/ etc / amavisd /中,我想我已经包含了所有需要的configuration,以便将spamassassin“打开”,但是我并不积极。
我读过的一些网站表示,贝叶斯filter需要使用sa-learn
在100条消息(对于垃圾邮件和非垃圾邮件)进行培训,但是我至less有1个网站指出filter需要接受培训200条消息。 也就是说,我可以确认我已经训练了至less100条垃圾邮件的filter。
所以,现在,每当我收到一封电子邮件,在对这100封垃圾邮件进行过滤培训之后,我仍然没有在邮件标题中看到baysianfilter正在被使用:
X-Virus-Scanned: amavisd-new at developcents.com X-Spam-Flag: NO X-Spam-Score: -0.525 X-Spam-Level: X-Spam-Status: No, score=-0.525 tagged_above=-999 required=4 tests=[HK_RANDOM_FROM=1, HTML_MESSAGE=0.001, RP_MATCHES_RCVD=-2.499, SPF_SOFTFAIL=0.972, URIBL_BLOCKED=0.001] autolearn=unavailable
即使贝氏还没有经过充分的培训并准备好被“使用”,我不应该在X-Spam-Status部分看到一个标签,指出它是否使用Bayes滤波器?
(对于它的价值,我已经发布了部分邮件头的电子邮件是垃圾邮件,显然没有被标记为这样)
有什么我失踪?
我最近把邮件服务器升级到一个新的CentOS 7服务器(来自CentOS 6),除了电子邮件和DNS以外什么也不做。 以前的CentOS 6服务器也运行着Apache上的几个网站。
我不确定我做了什么不同的事情,导致邮件标题中显示的贝司作为已运行的testing,但似乎我已经完全configuration了贝叶斯。 以下是我如何做到这一点:
和以前一样,我使用amavisd-new
作为主要的病毒和垃圾邮件扫描程序运行Postfix。 amavisd-new
然后交给spamassassin。
Postfix是来自CentOS Plus存储库的版本2.10.1,amavisd-new是来自EPEL存储库的版本2.10.1,spamassassin是来自基础存储库的版本3.4.0。
spamassassin的configuration文件如下:
[root@mail ~]# cat /etc/mail/spamassassin/local.cf required_hits 5 report_safe 0 rewrite_header Subject [SPAM] razor_config /etc/mail/spamassassin/.razor/razor-agent.conf use_bayes 1 bayes_path /var/spamassassin/bayes bayes_file_mode 077 auto_learn 0 use_razor2 1
现在,我的邮件标题确实表明bayestesting正在运行:
X-Virus-Scanned: amavisd-new at developcents.com X-Spam-Flag: NO X-Spam-Score: 5.129 X-Spam-Level: ***** X-Spam-Status: No, score=5.129 tagged_above=-999 required=6.2 tests=[BAYES_99=3.5, BAYES_999=0.2, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_FONT_LOW_CONTRAST=0.001, HTML_MESSAGE=0.001, MIME_HTML_ONLY=0.723, MIME_QP_LONG_LINE=0.001, RDNS_NONE=0.793, SPF_PASS=-0.001, T_REMOTE_IMAGE=0.01, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
不幸的是,我仍然试图处理垃圾邮件,因为大部分邮件仍然处于低谷(6.1或更低),但是我正在取得很大进展。
对于它的价值来说,这有点偏离主题,但我build议在Postfix main.cf中将以下RBL作为smtpd_recipient_restrictions
定义的一部分(请注意,在使用这些列表之前,您需要注册):
reject_rbl_client zen.spamhaus.org, reject_rbl_client bl.spamcop.net, reject_rbl_client b.barracudacentral.org, reject_rbl_client dnsbl.sorbs.net, reject_rbl_client cbl.abuseat.org, reject_rbl_client dnsbl-1.uceprotect.net, reject_rbl_client dnsbl-3.uceprotect.net,
希望这有助于某人。