使用sa-learn和不使用它之间的spamassassin有什么区别?

我有个问题。 是否使用sa-learn教关于垃圾邮件的spamassassin和火腿呢? 如果我不使用它,因为我的邮件服务器中没有垃圾邮件或火腿样本?

sa-learn通常用于存储在机器上的邮件(以mbox或maildir格式),并且只在您分别提交垃圾邮件和火腿时才起作用。 如果你打算使用它,最好使用两个例子来防止过滤偏差。

这里有一个很好的文档,通过过程和细节,但它确实需要本地存储的邮件(在任何一种格式)。

说了这个,我在几个盒子上使用了SA,从来不使用sa-learn,它仍然做得非常好。 我确实使用了许多不是基于SA的反垃圾邮件技术,尽pipe…

我同意Mark Regensberg的回答,但要更具体一些:据我所知,SpamAssassin的sa-learn和其他贝叶斯元素只影响贝叶斯testing(您可以看到目前完整的SAtesting列表以供澄清)。

也就是说,无论您是否使用sa-learn,所有基于规则的testing都能发挥完全的效果。 只有BAYES_nn规则的匹配受到sa-learn --ham--spam的贝叶斯引擎的个性化培训的影响。

话虽如此,其中一些testing得分相当高 – 根据贝叶斯引擎认为它的“垃圾”,邮件的评分可能会受-1.9到+3.8之间的影响 – 所以我发现了很多在给我的引擎一些培训的价值。 正如马克指出,你需要将你的火腿和未被发现的垃圾邮件分别存档,才能做到这一点。

在回答Mark给Mark的回复时,“其他”技术使我的垃圾邮件比任何其他垃圾邮件都大大减less,通过消除“即忘即忘”邮件,我的垃圾邮件减less了90%以上。 对收到的电子邮件引入SPF过滤是第二最有效的,削减了约5%。

SpamAssassin有相当多的技术来发现垃圾邮件。 其中之一就是它的正则expression式(正如MadHatter的回答所指出的),但是这些日子并不是非常有效的。 另一个(MadHatter也注意到)是SPF,但是我可以这样说,它的能力可以忽略不计。

SpamAssassin中最有效的技术是贝叶斯检测和在线查找( DNSBLs (又名“RBLs”)和URI DNSBLs ,以及哈希系统(如Razor和Pyzor) ,另请参阅安装Razor和安装Pyzor的SA wiki页面。

在线查询是最简单的; configuration他们的权利,你很好去。 他们会及时跟上垃圾邮件的攻击,这些垃圾邮件会抵达各种垃圾邮件陷阱networking(honeypots),但是它们不会保护你免受雪蹄(太快)或者像鱼叉捕捉(太小)的攻击。

贝叶斯检测需要不断的维护。 这是一个机器学习系统,因此必须定期接受有关错过的内容(以及错误地捕获的内容)的培训。 获得的关注越多,获得的效果越好。

SpamAssassin有一个自动学习系统 ,假设所有非常高得分的垃圾邮件都应该被学习,所有非常低得分的火腿都应该像火腿一样学习。 问题是只能从容易的方面学习,特别是对于火腿,可能会从错误分类的邮件中学习,这将加强SpamAssassin的错误。

SpamAssassin的部署不应该信任自动学习,无需额外的手动培训。 这是为了补充手动培训,而不是取代它。 你必须使用sa-learn (或spamassassin --report ,这也报告给Pyzor,Razor和SpamCop DNSBL)。

您可以在SpamAssassin wiki上了解有关Bayes的更多信息。