邮件服务器-邮件系统-邮件技术论坛(BBS)

标题: 我有一个新的WINWEBMAIL垃圾邮件网关的思路 [打印本页]

作者: psh2000    时间: 2008-2-2 16:05
标题: 我有一个新的WINWEBMAIL垃圾邮件网关的思路
在WINWEBMAIL的二次开发中有应该有1个获取某用户下所有邮件ID的一个方法
然后我把每个邮件的来源IP都进行CBL查询。如果判断为垃圾IP。那就直接用二次开发的移动到垃圾箱或者删除邮件的方法把邮件处理掉

程序每分钟运行1次。这样就不用定期更新什么KILL.ini了。而且及时性也非常的高。耗用的CPU资源也非常低。
因为主要的判断查询过程已经不需要WINWEBMAIL进行处理了。
而且程序会记录经过判断的邮件ID。那就不会对已经处理过的信息重新进行判断。
程序要做的就是列出新邮件。并做CBL查询。然后再处理邮件

正在努力寻找相关接口。正准备做一个。

[ 本帖最后由 psh2000 于 2008-2-2 16:07 编辑 ]
作者: ideacm    时间: 2008-2-2 16:07
想法相当不错
顶一个
3.7.6.1防垃圾邮件相对以前版本好了很多了
作者: psh2000    时间: 2008-2-2 16:10
我的思路,其实完全可以实现WINWEBMAIL接收所有的邮件。包括垃圾邮件都全收下来。然后再对邮件做处理。。
除非在处理之前就已经有人把邮件通通收了下来。
这就没办法了。。
作者: psh2000    时间: 2008-2-2 21:24
$EmailInfo = new COM("easymail.InfoList");
$EmailInfo->LoadMailBox("checkmail@aaa.net","in");
echo $EmailInfo->getMailsCount;

以上是一段根据listmail.asp里面部分代码转成PHP的一小段代码,作用是读取邮件数量
但在PHP执行后,获取到的邮件数为0。

老马的easymail.dll是不是做了什么限制啊?不允许这样二次开发?
作者: tdk    时间: 2008-2-2 23:44
不是很明白

每个邮件的来源IP  怎么理解?
一个邮件经过多次转发走过的所有ip?

另外?cbl rbl ,邮件服务器传输握手后不久是要做这个工作了吗?
怎么还要2次开发做?

不太了解这个系统,冒昧询问
作者: psh2000    时间: 2008-2-3 00:06
CBL RBL不是邮件服务器,只是一个IP查询系统。对于垃圾邮件来源IP会返会一个状态码
但WINWEBMAIL没有这个步骤,只有查询来源IP是否在WINWEBMAIL的IP黑名单之中,
而且如果WINWEBMAIL的黑名单一但多起来。这个判断是很耗资源的。
以前我做过1个定期自动更新黑名单IP列表的程序,整个服务器运行起来极慢。

甚至我可以说。除非现在论坛上那个免费邮件网关的服务器超强,或者黑名单IP数不多,这没什么影响。
一旦多起来。再怎么优化都是一个非常耗资源的东西。

比如有黑名单中有2W个IP,那每封邮件就需要循环2W次去查找。所以这个不是好方法哦。

我是想让WINWEBMAIL实时的查询CBL,所以。才要用到二次开发。
作者: chinaliuqi    时间: 2008-2-3 19:39
看了PSH2000的帖子
我大致理解如下,不知道对不对。

  你所说的实际上是丰富了一个 邮件过滤 【自动将来信进行分检和处理】过程,这个在WINWEBMAIL个人选项中已经有了,但是如何从RBL的DNS中查询并对比IP地址,和返回值,这是你首要解决的关键问题。

我有几个疑问需要提一下

1 即使在你能够成功的对比RBL列表,并成功将邮件转移至垃圾箱时,你有多大把握判断这封邮件的确是垃圾邮件?
2 如果你想获取并对比RBL列表时,你可曾想过RBL列表的数据库很庞大?一封一封对比恐怕这个需要耗费很长时间。
3 假设这种形式可以成立,你改如何解决from 127.0.0.1这类的垃圾邮件?

我有几个建议给你

1.CBL不能作为首选,因为其局限性较大,如果单独采用RSYNC来同步数据,速度相当慢!并且你无法最先知道其更新内容。所以如果要单纯通过IP来判断,你需要建立一个自己的黑名单。这应该是一个数据库,以便后期开发client mai servr 获取黑名单的数据来源,这方面的工作,我做过一些,但是效果非常不理想,效率极其的低。

2.正确理解网关形式的反垃圾邮件策略

3.建议想办法收集垃圾邮件样本,丰富自己的黑名单。

4.尽量简化操作和后期维护工作

5.强大的日志功能 以便出问题后 可以很快找到问题解决办法

6.通用性 实用性 易用性 结合在一起考虑!
http://spam.newhi.net   

这里总共种方式,第一种被动防御(CBL列表) 第二种主动防御(反垃圾邮件网关)

现在反垃圾邮件网关 日垃圾邮件处理能力 可以在500万封左右 CPU消耗不超过15%

有兴趣,可以一起探讨这些问题!

[ 本帖最后由 chinaliuqi 于 2008-2-3 19:43 编辑 ]
作者: psh2000    时间: 2008-2-4 05:01
ping 153.68.195.209.cblplus.anti-spam.org.cn
你试试从命令行运行这个语句。
会返回到一个IP地址

以上语句是检测209.195.68.153是否垃圾IP,当这个IP是垃圾IP的时候。PING能返回一个IP地址。
然后比如有1个IP:111.112.113.114这个IP是正常IP。
你再试一下PING 114.113.112.111.cblplus.anti-spam.org.cn
你会发现返回不了IP。也就是说他没在CBL中。

所以只要检查IP是否为垃圾IP。其实最简单就是模拟PING的过程。就可以实现。
用程序实现这个不难吧?
作者: psh2000    时间: 2008-2-4 05:14
我不是说你的那个反垃圾网关不好
但由于那个涉及到邮件内容泄露。所以。不建议跟这个问题搭上关系
另外,如果把列表放到本地。列表一多起来。那是很占资源的事。
所以我才提议这种介于两者之间的方式:
1、本地判断,不涉及内容泄露
2、解决因IP列表庞大而造成的资源损耗
作者: chinaliuqi    时间: 2008-2-4 07:25
1 即使在你能够成功的对比RBL列表,并成功将邮件转移至垃圾箱时,你有多大把握判断这封邮件的确是垃圾邮件?
2 如果你想获取并对比RBL列表时,你可曾想过RBL列表的数据库很庞大?一封一封对比恐怕这个需要耗费很长时间。
3 假设这种形式可以成立,你改如何解决from 127.0.0.1这类的垃圾邮件
作者: chinaliuqi    时间: 2008-2-4 07:31
dig 153.68.195.209.cblplus.anti-spam.org.cn | find "IN A 127"

这个过程会快些
作者: tdk    时间: 2008-2-4 10:14
我就用kerio 自带的rbl查询 感觉挺好
呵呵  如果觉得慢 也可以做一个本地的rbl
总之这东西 都是垃圾惹得祸

个人能力肯定有限,有时候还是需要一些付费或者公众的产品来解决
作者: chinaliuqi    时间: 2008-2-4 16:30
如果在本地来过滤垃圾邮件,我觉得自己开发,到不如用SpamAssassin
作者: chinaliuqi    时间: 2008-2-5 07:02
基于 SpamAssassin FOR Winwebmail 小工具 我已经写好了!不过由于本地用户较多,邮件较多!所以效率不高 10分钟一次 呵呵。

功能还可以 支持RBL Bayesian helo Penalty

主要是遍历目录的时候太慢


又经过了优化,现在遍历一次大概也需要一点时间,系统资源占用也降的很低了!效率有明显提高!25万文件 1523个文件夹 遍历一次不是太容易。

[attach]3986[/attach]

[ 本帖最后由 chinaliuqi 于 2008-2-5 23:04 编辑 ]
作者: chinaliuqi    时间: 2008-2-5 07:24
标题: 给大家一个例子看看
邮件头信息

Received: from localhost by mail-dns-server
    with SpamAssassin (version 3.0.1);
    Tue, 05 Feb 2008 07:18:52 +0800
From: =?GB2312?B?wfXdvA==?= <liujing@sina.com>
To: webmaster@supresoft.com
Subject: [SPAM] =?GB2312?B?usO+w7K7vPvE48HLLLu5vMe1w87SwvA/?=
Date: Tue, 5 Feb 2008 06:40:14 +0800
X-Spam-Flag: YES
X-Spam-Checker-Version: SpamAssassin 3.0.1 (2004-10-22) on mail-dns-server
X-Spam-Status: Yes, score=11.9 required=5.0 tests=CN_BODY_7,CN_SUBJECT_245,
    FORGED_MUA_OUTLOOK,FORGED_OUTLOOK_HTML,FORGED_OUTLOOK_TAGS,HTML_60_70,
    HTML_IMAGE_ONLY_08,HTML_MESSAGE,HTML_TEXT_AFTER_BODY,
    HTML_TEXT_AFTER_HTML,MIME_8BIT_HEADER,MIME_HTML_ONLY,
    RCVD_IN_BL_SPAMCOP_NET,RCVD_IN_XBL autolearn=no version=3.0.1
X-Spam-Level: ***********
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="----------=_47A79D5C.28FA0000"



经过过滤后的邮件内容  


Spam detection software, running on the system "mail-dns-server", has
identified this incoming email as possible spam.  The original message
has been attached to this so you can view it (if it isn't spam) or label
similar future email.  If you have any questions, see
http://spam.newhi.net for details.

Content preview:  我是你的好朋友,找资料时发现的一个很好的网站
  上面的学习资料很多 还有很多教学视频 [...]

Content analysis details:   (11.9 points, 5.0 required)

pts rule name              description
---- ---------------------- --------------------------------------------------
0.5 CN_SUBJECT_245         Subject contains "好久"
0.2 CN_BODY_7              BODY: Body contains "网站"
0.0 HTML_60_70             BODY: Message is 60% to 70% HTML
0.2 HTML_TEXT_AFTER_BODY   BODY: HTML contains text after BODY close tag
1.2 MIME_HTML_ONLY         BODY: Message only has text/html MIME parts
0.0 HTML_MESSAGE           BODY: HTML included in message
0.2 HTML_TEXT_AFTER_HTML   BODY: HTML contains text after HTML close tag
2.0 HTML_IMAGE_ONLY_08     BODY: HTML: images with 400-800 bytes of words
1.8 RCVD_IN_BL_SPAMCOP_NET RBL: Received via a relay in bl.spamcop.net
             [Blocked - see <http://www.spamcop.net/bl.shtml?221.203.168.147>]
2.5 RCVD_IN_XBL            RBL: Received via a relay in Spamhaus XBL
                            [221.203.168.147 listed in sbl-xbl.spamhaus.org]
0.0 FORGED_OUTLOOK_HTML    Outlook can't send HTML message only
0.0 FORGED_OUTLOOK_TAGS    Outlook can't send HTML in this format
0.3 MIME_8BIT_HEADER       Message header contains 8-bit character
3.0 FORGED_MUA_OUTLOOK     Forged mail pretending to be from MS Outlook

The original message was not completely plain text, and may be unsafe to
open with some email clients; in particular, it may contain a virus,
or confirm that your address can receive spam.  If you wish to view
it, it may be safer to save it to a file and open it with an editor.

[ 本帖最后由 chinaliuqi 于 2008-2-5 07:26 编辑 ]




欢迎光临 邮件服务器-邮件系统-邮件技术论坛(BBS) (http://bbs.5dmail.cn/) Powered by Discuz! X3.2