科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网安全频道为TMDA书写垃圾邮件过滤器

为TMDA书写垃圾邮件过滤器

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

我们曾经介绍过TMDA是一个很好的反垃圾邮件工具。虽然有些人并不同意它的那种“询问/响应”的电子邮件处理方式,但像TMDA这样通过使用黑白名单过滤机制,以及自身“询问/响应”机制的工具却是十分有效的。

作者:ZDNet China 2008年4月14日

关键字: 反垃圾邮件

  • 评论
  • 分享微博
  • 分享邮件
我们曾经介绍过TMDA(标签化邮件转发代理)是一个很好的反垃圾邮件工具。虽然有些人并不同意它的那种“询问/响应”的电子邮件处理方式,并举例说它的所作所为只是搞得你要收的电子邮件更多了,但是像TMDA这样通过使用白名单和黑名单,过滤机制,以及自身“询问/响应”机制的工具却是十分有效的。

你可能更喜欢使用类似Procmail这样的工具来进行过滤,因为TMDA使用起来可复杂多了,但是在TMDA的结构中,你可以基于过滤器表达式来建立不同的过滤器,从而执行特定的动作。比方说,使用TMDA过滤器(也许是和Procmail协同工作,以进行最终递送过滤),你可以制定一些规则,明确地删除某些邮件,而其他的邮件需要进行响应,剩余邮件则无需要求响应而直接通过。

有两种代表性的过滤器:“流进过滤器”和“流出过滤器”。流进过滤器放在服务器上,而流出过滤器则放在你的个人电脑上,以处理要发出的邮件(比如使用基于日期的地址,包含特定关键词的地址,等等)。

“流进过滤器”通常存放在“~/.tmda/filters/incoming”下,其内容是一种非常基本的方式,看起来就像下面这样。

## incoming tmda filter; first match wins
# include black and white lists
from-file -autodbm ~/.tmda/lists/whitelist accept
from-file ~/.tmda/lists/whitewildcard accept
from-file ~/.tmda/lists/confirmed ok
from-file ~/.tmda/lists/blacklist drop
# default action
from * confirm

TMDA使用的过滤器分解机制,是以所符合的第一条规则优先处理,否则依次向下推移。在上述的例子中,有两个“白名单”文件:“~/.tmda/lists/whitelist”和“~/.tmda/lists/whitewildcard”。第一个是一个电子邮件地址的纯文本列表,从而让符合该列表的邮件无需“询问/回应”机制既可通过。而-autodbm的指定,则是用于告知TMDA建立并使用一个DBM数值的数据库,以便加快查找的进程(TMDA会在必要时重建DBM——当该纯文本文件被修改之后)

注意,那个“~/.tmda/lists/confirmed”文件,也是一个纯文本的电子邮件地址列表,是已经通过了“查询/响应”机制的邮件地址集合(在配置文件中通过CONFIRM_APPEND关键词进行配置),而那个“~/.tmda/lists/blacklist”文件,则是一个纯文本的电子邮件黑名单列表,表明符合该列表的发信地址邮件将一律被丢弃。最后,对任何不存在于上述列表之中的邮件地址,其默认操作是发送确认邮件。

当然,过滤器的定义一般来说比这个要复杂的多。TMDA允许你依据email信件中显示的任意文件头部分进行过滤,所以你可以制定出一些非常复杂的过滤规则。你也可以根据邮件大小进行过滤,甚至可以调用一些外部程序(比如SpamAssassin或Razor),然后根据这些程序的返回代码进行过滤。

(责任编辑:陈毅东

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章