没时间看,先收录一下相关文章,这是我们邮件服务器新采用的技术,可以有效防止垃圾邮件:
Greylisting的机制是利用SMTP(SMTP RFC)回传error code 450的技巧来判断对方是否为spamming software或者是一般正常的MTA。当mail server收到一封由未知寄件者(IP)寄来的邮件,mail server会退回此信件,并且标注上"try again later"。正常的MTA,会在看到"try again later"的时候,会再重新发送此信件,但spamming software并不会理会而放弃重新发送。
在全世界大部分的广告发信软件都还没有抵制Greylisting前,我们可以利用这个想法,将广告邮件与一般邮件分隔开。
Greylisting的好处在于误判率低,效率高,坏处是邮件会延迟5分钟到1小时送达。而大多数的mail server,会在10分钟至30分钟内重送。
影响的范围:mail server首次看到由 *未知* ip寄来的信且非spam mail,第一次会加上"try again later"(SMTP error code 450)退回,然后对方重送时就会收信来了。重送的时间依对方mail server设定为主。
如果是属于经常会有信件往来的IP,则会进入whitelist直接allow。
关于 Greylisting 的说明,您可以参考「在Postfix上强力的antispam机制:Postgrey」这份文件里的说明。
不过,对于要用RPM包的朋友,大家可以到以下地址去下载:
http://www.lfarkas.org/linux/packages/
安装的时候,需要安装几个perl的依赖包,大家可以用google搜一下了,在这里不用废话了 ^_^
引自:http://www.huzi.cn/blog/archives/2006/01/greylistingspam.html
防止垃圾邮件是一件复杂的事情,而且可能比大多数用户所理解的更复杂。尽管在这场战争中有几件武器可用,但它们都有其局限性。了解一个被称为灰名单(greylisting)的新方法可以帮助在垃圾邮件到达SMTP服务器之前阻止它。
如果你问十个人他们在Internet上遇到的最令人沮丧的事情是什么,我敢打赌其中九个人会提到电子邮件。尽管Internet上确实还有其他安全问题,但是有好几个Internet安全问题都涉及到了电子邮件。
并不意外的是通常许多危及Windows系统安全的病毒和木马程序都具有能够将自己假扮成电子邮件代理的特性。垃圾邮件就是重要的一类,而且不幸的是它在Internet中横行的现状很有可能继续下去。
类似许多Internet应用协议,简单邮件传输协议(SMTP)的设计初衷并没有考虑到安全。作为补充,开发者只是在这些年简单地扩展了SMTP的安全特性。
然而,保护电子邮件系统的自身安全和防止垃圾邮件是两个不同的问题。需要记住的是Internet上的大部分电子邮件通信都是危及宽带网络中Windows PC安全的垃圾邮件,而不会危及公司的邮件服务器的安全。
尽管广告邮件的发送者从肆无忌惮的广告中赚取了数百万,但是垃圾邮件对所有使用Internet的人来说都是占用时间,耗费带宽,因此也就浪费金钱。作为证明,只需考察商业垃圾邮件过滤服务的市场,就足以明白有多少用户认为垃圾邮件是Internet上最令人头疼的问题。
但是阻止垃圾邮件是一件复杂的事情,可能比大多数用户所认为的都要复杂。而且即使是模式匹配和基于统计的邮件内容过滤都有其自身的缺陷。除此之外,根据我曾经多次使用实时黑名单(relay block lists ,RBL)和过滤器的经验,某个人的垃圾邮件对另一个人却成了合法邮件。这主要归结于确实没有能够阻止垃圾邮件的单独自动有效的解决方案。
当然,这并不是说目前的方法没有效果;只是它们的效果不是非常理想,或者说没有达到我们的预期。和Internet的任何其他安全领域一样,电子邮件安全(或者是本文中的垃圾邮件预防)当分层应用的时候效果最好。安全分层越细,整体的安全保护就变得越有效。
每种方法都有其局限性。例如,"黑名单"和"白名单"实施起来冗长乏味。他们需要用户的大量操作,但是如果你的列表是准确的,他们相当有效。
尽管我们付出了大量的努力,但是垃圾邮件好像总是能找到某个方法进入我们的收件箱,而有时甚至合法的邮件都进不来。但是放弃希望还为时尚早:一个对付垃圾邮件的新方法,也就是所谓的"灰名单"被证明是一个预防垃圾邮件的有效方法,它可以在垃圾邮件到达目的SMTP服务器之前阻止它们。
除了有助于预防垃圾邮件,灰名单还可以弥补另一个SMTP的缺陷:该协议无法区分邮件服务器和邮件客户端。
灰名单尝试在SMTP服务器和邮件客户端之间建立这种特殊差别。通过这样做,它可以有效地阻止垃圾邮件代理。虽然邮件服务器和邮件客户端都利用SMTP,但是合法的专用SMTP系统能够识别特定的返回代码。
SMTP是典型的"存储转发"系统,排列电子邮件直到发送出去。一个启用了灰名单的SMTP服务器记录它收到连接的信息,并且返回一个状态代码告诉一个连接中的计算机,它暂时无法接受电子邮件。
一个合法的电子邮件系统"对话"SMTP-例如,微软Outlook或某个运行微软Exchange的电子邮件服务器,Sendmail,或其他SMTP服务器软件-将再次尝试传送邮件。也就是说,启用了灰名单的SMTP服务器将通过该消息。
当有效的SMTP连接再次尝试发送电子邮件,由于启用了灰名单的服务器将从前一次的尝试中匹配IP地址,以及MAIL FROM和RCPT TO SMTP头字段中的信息,服务器就不会阻挡有效的消息。如果它们是匹配的,服务器就接受该邮件。灰名单通常灰直接拒绝垃圾邮件代理,因为这些代理不保存邮件。
然而,发送广告邮件的人正在适应灰名单,所以这样做将很难一直有效。但是因为灰名单记录发送和接受电子邮件地址的同时,也记录IP地址,所以进一步扩展灰名单以监视这类信息并采用相应策略是可能的。例如,一个应用了灰名单的SMTP服务器可以监视不存在的"种子"用户的连接,然后用这些识别垃圾邮件代理和源IP地址。
所以你可以向何处求助以满足你的灰名单需求呢?虽然Postfix SMTP服务器包含了一个简单的灰名单应用,但是称为Postgrey的具有产品级质量的系统对电子邮件系统是一个更好的选择。然而,由于灰名单是一个应用在SMTP服务器级的功能,并且考虑到它是一个新方法,所以你可能不会看到灰名单内嵌在你的SMTP服务器中。
在某些情况下,在目前的SMTP服务器中用Postfix和电子邮件接收中继"前端化"你现有的电子邮件服务器。这可以使你无需对现有的电子邮件服务器做任何的变动就可以使用灰名单。
实际上,我已经为运行在公司环境中的许多微软Exchange和Lotus Domino服务器应用了Postgrey,这些公司曾经不堪垃圾邮件之苦。在利用多余的空间在常用的PC硬件中安装了Fedora Linux之后,只需15分钟就可以配置好Postfix和Postgrey以使它们和现有的SMTP服务器共同工作,只需对现存的基础架构稍做调整就可以提供灰名单的所有特性。
引自 http://www.ljyj.net/technology/2007-05-05/11.html
利用Greylisting技术来高效准确过滤垃圾邮件
经过几天试用ORF的Greylisting技术来过滤垃圾邮件,发现垃圾邮件大大减少了甚至没有了.
对于陌生人第一次发来的邮件,Greylisting做了临时拒绝(不是真的拒绝,而是让对方邮件系统认为是网络或我们的邮件服务器临时出了问题),如果对方是使用正常的邮件系统发来的,则隔几分钟后,对方邮件系统会自动再次尝试发送那封邮件,当那封邮件第二次到达,Greylisting会自动让该封邮件进来,在一段时间内该人发来的邮件仍可直接进来, 正常的邮件系统会自动尝试发送失败邮件一天才放弃并把邮件退回, 也就是说正常邮件是不会丢失的.
现在绝大部分垃圾邮件是使用快速的群发技术,如果发不了则马上丢弃并发送其它封邮件,不会再尝试了,Greylisting刚好利用这点来阻挡垃圾邮件,当然个别垃圾邮件是使用正常的邮件系统发送,则Greylisting是无法阻挡,个别落网之鱼就请您直接删除掉.
Greylisting也有些不足:
Some mail server don't follow the RFC and so they have problems with
Greylisting.
The most common problems are:
1. An IP address pool where every connect uses a different IP address
2. A unique sender for every connect
3. The second connect is within seconds after the first one, but the third
connect is late, sometimes too late
4. Does not reschedule at all
5. Reschedules in a very long interval that cause a long delay
6. A strange scheduling ( there is no pattern in the schedule )
对于第1可手工加入排除表(不做Greylisting),看下面的那个连接就有现成的.
http://www.vamsoft.com/orf/greyexcept.asp
其实对于第1你不加也没关系,延迟会稍长点, 对于2.3.5.6就不管它了,极少能碰到,最多就延迟长点
正常的邮件系统是不会按照4的来设计, 唯一可能的是按这种方式发的邮件列表.
Greylisting的唯一缺点是延迟了邮件到达时间, 为了解决这个问题,我们采用2个办法解决:
1.我们在白名单(不做Greylisting过滤而直接进来)里已经手工加入常用的邮件,如*@aaaaaa.com,*@bbbbbb.com等邮箱域
2.利用自动白名单功能,自动收集从发出去的邮件的收件人,把收件人自动加入到白名单里,也就是说凡是联系过的外面邮箱发来的邮件不再做垃圾处理.如: test@yourdomain.com发了一封邮件到
test@yahoo.com,则以后从test@yahoo.com发来的邮件,不管收件人是谁,都不做任何垃圾过滤而直接发送进来.
我个人认为
DNS Blacklist最好不用, 不适合中国使用.
Reverse DNS也不要用,中国邮件系统好多没搞反向DNS解析.
SPF如果邮件系统管理员不及时更新变更信息, 也有错的时候.
我的使用方法是"自动白名单+Greylisting+URI过滤",利用这3点,可以至少过滤掉95%以上垃圾,目前还没发现有正常工作邮件被当做垃圾而被拒绝(是拒绝,而不是丢去)的情况, 如果不用URI过滤,那就不存在正常工作邮
件被当做垃圾的情况, 过滤效果稍微小一点.
引自:http://bbs.net130.com/archive/index.php/t-131072.html