斩断Linux邮件服务器的垃圾邮件魔掌

时间:2007-08-07 08:02:31  来源:赛迪网  作者:佚名

注意:根据你的发布版本的不同,spamassassin可能位于/etc/init.d/ 。

启动并运行spamassassin之后,你可能会想到在每次启动时此程序都会启动运行。你可以使用system-config-services这个应用程序,或者检查启用spamassassin选项。如果用户没有system-config-services这个软件,可以在/etc/rc.local文件中增加如下的内容:

/etc/rc.d/init.d/spamassassin start
或者
/etc/init.d/spamassassin start
 


这依赖于你可执行SpamAssassin所处的位置。
如何应用SpamAssassin


与Procmail协同工作

你的spamassassin已经启动并正常运行,现在需要你设置它与邮件传输代理(Mail Delivery Agent)一起工作。在此笔者假设你正使用procmail,因为它是在Linux环境中应用最广泛的邮件传输代理。

用户需要编辑/etc/procmailrc文件并增加下面的内容:

DROPPRIVS=yes
:0fw
| /usr/bin/spamc
 


现在procmail被设置为使用SpamAssassin 来评价和过滤进入的垃圾邮件。

垃圾邮件黑名单

我们知道某些域/用户会发送垃圾信息。幸运的是,SpamAssassin有一个对付已知垃圾邮件制造者的手段。借助于黑名单,SpamAssassin又朝着最佳和最后的垃圾邮件防线又迈了一步。

设置黑名单是很简单的事情。你可以向两个配置文件添加黑名单。对于站点范围内的使用,可以考虑/etc/mail/spamassain/local.cf ;在~/.spamassassin/user_prefs内,每一个用户可以配置其自己的黑名单。黑名单看起来是如下的样子:

blacklist_from sample_email@sampledomain.com
blacklist_from *@sampledomain.com
blacklist_from *@sampledomain.com
blacklist_from *@sampledomain.com
 


上面的内容相当明显地向我们展示了如何配置黑名单。即你可以配置具体的电子邮件地址(如sample_email@sampledomain.com),你也可以配置整个域(如*@sampledomain.com

如果你不想花费时间编辑自己的黑名单,你可以从http://www.sa-blacklist.stearns.org/sa-blacklist/sa-blacklist.current下载最新的黑名单。不过,未必适合你的需要,有许多中文的垃圾邮件网站并没有列入。而且这个列表相当庞大,因此在下载此列表并添加到你的黑名单时可要小心了。

训练你的SpamAssassin

有可能你的SpamAssassin不能正确地评价电子邮件是否垃圾邮件。如果发生这种情况,可以用自己的电子邮件训练SpamAssassin。

为此,你需要使用一个SSH程序(如SSH或Putty等)和SpamAssassin'ssa-learn程序。邮件服务器还必须设置IMAP协议,用以训练SpamAssassin。

为了训练SpamAssassin,用户应遵循如下的步骤:

1.将垃圾邮件从正常邮件中分离出来,将其放入一个单独的邮箱中。

2.打开ssh应用程序并连接到jupiter.gac.edu。

3.运行如下两个命令:

sa-learn --ham --progress --mbox Mail/nameOfYourHaMMailbox
sa-learn --spam --progress --mbox Mail/nameOfYourSpamMailbox
 


如果你用超过200个垃圾邮件和200个正常邮件训练了你的SpamAssassin,它就会使用这些信息来决定哪些是垃圾邮件,哪些不是。

结束语

笔者认为SpamAssassin 可谓阻止垃圾邮件漫延的必备工具之一。可以这样说,在公司环境中运行着一个邮件服务器,而如果您没有采取任何防范措施,任凭垃圾邮件通过您的传输通道肆意漫延时,那简直是一场噩梦。

试想一下设置防止垃圾邮件软件的重要性以及SpamAssassin使用的简易性吧,你还有什么理由不在你的Linux邮件服务器上部署SpamAssassin这个好东西呢,也许你的邮件服务器甚至你的WEB服务会因此人气大增。


文章评论

共有 位CH网友发表了评论 查看完整内容