greylist - 灰名单技术

灰名单是一种行之有效的反垃圾邮件技术,其基本假设是病毒,垃圾邮件向受害人发送的邮件,通常都是一次性的,如果遇到错误,根本不会重试。此假设是比较有科学根据的,我考察过一些发垃圾邮件的软件,这些软件基本上都不会对邮件服务器返回的错误做出任何重试,而只是简单的在日志里记录发送失败而已。

而病毒引发的邮件风暴则更加不会识别邮件服务器返回的错误,因为这些病毒仅仅是简单的发送邮件,发送时根本不理会服务器的状态,只管一股脑儿送。而当病毒风暴结束后,这些病毒邮件也就停止发送了。

greylist的设计大体上是基于一种重试的原则,即第一次看到某个IP要想给某个收件人发信,那么它将简单的返回一个临时错误(4xx),并拒绝此请求,正常的邮件服务器都会在一段时间内(如半小时)重发一次邮件。greylist发现还是刚才同样的ip地址和收件人,认为此ip是来自合法服务器的,予以放行。如果是非正常的邮件,那么或者将永远也不再进行重试,或者会疯狂重试,但由于间隔太近,而遭拒绝。因此,greylist只要设置一个合适的放行间隔,就可以在很大程度上对这类垃圾邮件有着良好的免疫能力。

greylist的一大特点就是不会丢信,正规的邮件服务器认为4xx错误只是临时性、软性的错误,会隔一段时间重试,因此邮件还是可以投递成功。但 greylist的一大缺点即使延迟(delay),延迟从几分钟到几个小时不等,这要看发送方服务器重试的间隔(postfix默认是1000秒)。对于一些对邮件及时性很强的客户,greylist可能不是一个很好的选择。

有关greylist的具体技术及白皮书等,请参考如下网站: http://www.greylisting.org

 
slockd/plugin/greylist.txt · 最后更改: 2007/05/05 22:02
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki