SpamAssassin

来自站长百科
跳转至: 导航、​ 搜索

SpamAssassin 是一种安装在邮件伺服主机上的邮件过滤器,用来辨识垃圾信。它是使用大量的预设规则检查垃圾信,这些规则会检查寄到网域内所有邮件的标头,内文,以及送信者。他采取的过滤方式是采用记分制,也就是说会根据我们所设定的标准来给予分数超过标准值的时候即判定为 SPAM(垃圾邮件)

SpamAssassinApache发布的计算机程序许可证2.0,用于垃圾邮件过滤,基于内容的匹配规则。现在是Apache基金会。

SpamAssassin使用多种垃圾邮件检测技术,包括DNS为基础和校验的垃圾邮件检测、贝叶斯过滤、外部程序、黑名单和在线数据库。

该程序被整合到邮件服务器自动过滤所有邮件的网站。它也可以运行个人用户在自己的邮箱,被整合一些邮件程序。SpamAssassin是高度可配置的,如果作为全系统过滤器仍然可以配置为支持每个用户的喜好。

SpamAssassin是一个自由软件,它基于GUN的公共许可或是Perl的AL进行分发。这两个分发许可都允许用户自由修改该软件,并强制其以相同的分发许可再次分发该修改。

2006年SpamAssassin被Linux新媒体奖(New Media Award)授予“最佳的基于Linux的反垃圾邮件解决方案

SpamAssassin概况[ ]

SpamAssassin工作原理[ ]

SpamAssassin可以通过许多方法来检验一封电子邮件到底是不是垃圾邮件:

  1. 检查电子邮件的首部信息是否符合各种Internet标准(例如:数据的格式是否正确?)
  2. 检查电子邮件的首部和内容部分的信息是否包含一些垃圾邮件中常见的、用各种语言写成的短语或是句子(例如:“快速致富”或是退定该邮件的一些方法描述)。
  3. 将首部和内容部分的“校验和”与多个垃圾邮件信息在线数据库中的“校验和”作比较来确认垃圾邮件。
  4. 检查邮件发送者的IP地址是否在一些在线的站点列表中(这是一些已经被垃圾邮件发送者利用,或是怀疑被垃圾邮件发送者利用的站点)。
  5. 自定义地址、主机名和域名的白名单(白名单中的邮件不会作为垃圾邮件)和黑名单(上了黑名单的邮件会被当作垃圾邮件)。SpamAssassin可以根据用户邮件的历史记录自动构建白名单。
  6. 使用人为指定的一些垃圾邮件(通常成为spam)和非垃圾邮件(通常成为ham)的例子来训练SpamAssassin识别用户收到的各种不同的垃圾邮件。
  7. 使用SPF协议(Sender Policy Framework)比较邮件发送系统的IP地址和邮件发送人的域名,来确定该邮件发送系统是否允许该域名下的用户发送邮件。这是SpamAssassin 3.0中增加的新特性。
  8. SpamAssassin会优先排除那些愿意使用Hashcash形式的邮件发送者(使用Hashcash形式会作一些附加计算,消耗一些时间)。因为垃圾邮件发送者如果支持这些附加计算,就不能迅速发送大量垃圾邮件了。这是SpamAssassin 3.0中增加的新特性。
  9. SpamAssassin将信息格式验证、内容过滤和参考网络黑名单这三种方式相结合。基于过滤的系统要求用户参与,而且会引起邮件收发时的系统延迟。还有其他一些反垃圾邮件的方法,这些方法都各有利弊,,其中一些可以还可以用来替代SpamAssassin。
  10. 在一个挑战/应答系统中,系统会暂存一个陌生发送者发送的所有信息,并返回一个特定代码或是一组指令作为一个挑战。陌生发送者必须以某种方式作出应答,以验证其邮件地址,并证实(通常使用交谈的方式)发送者是一个人而不是一个自动垃圾邮件发送程序。如果发送者应答成功,系统就会真正接受该信息。
  11. 在灰名单系统中,当邮件服务器遇到陌生的邮件发送人或是陌生的邮件发送系统时,它先返回一个临时的SMTP失败代码。如果上述的邮件发送系统在经过一个合理的时间间隔后,试图重新发送邮件,邮件服务器会正常接收该邮件,及随后来自于该邮件发送系统的其他邮件(译注:邮件服务器认为这不是一个发送垃圾邮件的邮件发送系统,因此同意接收邮件)。因为当垃圾邮件发送者遇到上面的临时SMTP错误时,通常会把它当作永久性错误,或是试图在灰名单规定的时间间隔内连续多次发送该邮件,于是邮件服务器就会拒绝接收来自这个邮件发送系统的邮件(译注:邮件服务器认为这就是一个发送垃圾邮件的邮件发送系统,因此拒绝接收邮件)。
  12. 在限时地址系统中,一个电子邮件地址可以衍生出多个唯一性变体地址,用户可以在不同的web表格、电子邮件或是新闻组等需要电子邮件地址的地方分别填写不同的变体地址。可以限定这些变体地址的有效时间,也可以通过“激活”方式来激活某个原来无效变体地址。在这些系统中,如果用户的某一个变体地址收到了垃圾邮件,那么他(或她)就能轻易的找到发送垃圾邮件的公司(或是那些把你的邮件地址买给垃圾邮件发送者的公司),用户只需要取消这个变体地址就可以阻止垃圾邮件了。
  13. 在小额付费系统中,邮件发送者每次发送邮件都必须付费(金额很小),这样一来发送大量的垃圾邮件就会导致高额的开销。在一些类似的系统中,如果收件人确认其收到的不是垃圾邮件,则小额付费会返还给邮件发送者。(SpamAssassin 3.0中通过Hashcash的方式来支持小额付费的一个变体,在这个变体中小额付费演变为Hashcash中处理时间的消耗而不是真的付钱。)

相关条目[ ]

参考来源[ ]