2010年1月15日星期五

转:古哥事件之相关回忆:一个总是拆用户邮件的邮局

注:这篇文章首发在豆瓣,很快被和谐了,不过还是被人抓下了快照。文章还蛮有趣,我就再人肉快照几次,看看Live Spaces
会不会给我和谐掉,哈哈哈。我修改了文章中的少量用词以方便理解。

古哥事件之相关回忆:一个总是拆用户邮件的邮局
2010-01-14 11:43:07

07年底左右,公司上一个项目,设立一套反垃圾邮件系统来过滤海量的INTERNET垃圾邮件。因为本公司挨踢部门向来不差钱,且用微软的东西上瘾,所以这次也没多做什么比较就用上了微软客户经理热情推荐的新产品:EHS
(exchange host service)。这个产品非常特殊,因为一般做垃圾邮件过滤不外乎买一些设备或者软件在公司的邮件网关上建立一个类似防火墙的过滤闸口,而微软的这个新玩意就是一个庞大的海外数据中心,用户在收INTERNET
邮件的时候,先到微软的服务器上走一遍,把垃圾邮件和病毒都过滤掉了以后再进公司的邮件网关。就好比你租了一个净水装置,装在离你家200米远的社区卫生中心里。这样好处是从此你不用关心这个装置的维护,社区中心的专业团队都帮你办了,当然缺点就是你需要不停的付钱租用(仿佛单机游戏进入网游时代,是把?)。

这个项目实施起来非常非常简单。我们部门都觉得碰上了简单任务。结果某天晚上一切换,测试,大家都傻了。邮件只是从微软的数据中心里过了一遍,居然引起大范围的INTERNET
邮件延迟,达20分钟到数小时不等。怎么回事呢?部门里连我3个人通宵加班,不停的测试,找原因,最后终于发现了一点规律。

刚刚说了,这个服务会把原来直接寄到我们公司的邮件先加个转寄到微软的数据中心。我们公司的服务器当然是在国内了,如果用163、SINA
等国内的邮箱发,当然这封邮件就是在GFW
网内传递的邮件了,而微软的数据中心在哪里呢,弗吉尼亚,华盛顿,新加坡,都柏林,随机找一个帮你做过滤。

好了,发现问题了把,对了,微软EHS 服务会把你本来的 国内 邮件,统统变成 海外 邮件。

本来你从163给公司发邮件,路由是 163国内服务器-》公司国内服务器

现在成了 163国内服务器 -》微软服务器(北美,新加坡,欧洲。。。。)-》公司国内服务器。

你看,一封邮件,进出GFW 2次,一切问题全来了。伟大的Golden Shield
会对进出国内的每一个数据包做拆解,嗅探,关键字搜索。。。。对于邮件来说,它就是一个不停在拆你邮件的邮局,拆完了,看看,有没有敏感词,没有,把信糊上,再装莫作样的给你发出去。。。有敏感词。。。。。抱歉,有时候直接把你信扔了,同时是不是还会把你记录在案就没人知道了。。。。这样一个邮局的存在,什么邮件延迟啊,莫名其妙的掉信啊。。。。都可以理解了。。。。。

分析过程中我们问了很多INTERNET、广域网方面的专家,他们对GFW
早就有了深刻的认识,一听说我们这个反垃圾邮件系统的原理,都露出了诡异的笑容。。。。。纷纷表示这样搞肯定会有问题的,特别是邮件,思科华为那些几百万上千万的设备是用来干嘛的,就是来拆你们的信的啊。。。。。。。此时我们部门集体痛苦地把脸扭到一边。。。。

这次古哥事件曝光,想必搞网络的都不会太惊讶了,因为其实这种行为已经持续不知道多少年了。。。。只是这次比较过分,以前是自己开个邮局,有邮件在此中转就拆开看看;现在成了到潜到别人开的邮局里面,把密码锁破解了进去看别人的邮件。。。。那就。。。不合适了。。对把。。。

最后我们的项目是如何收场的呢。。。。我们经过反复测试,总算找到了点规律,发现如果从微软新加坡的数据中心发过来的邮件,GFW
似乎就相对来说比较开恩,延迟或者掉信就比较少;而如果邮件从北美的服务器过来。。。那简直就。。。。。。。。。所以后来我们就向微软施压,强迫他们为我们改变了产品的定义,把发给我们的邮件强制从新加坡数据中心转发。而不是随机在全球的数据中心中转。这样其实就等于没有了冗余的路由,但是至少邮件能比较正常的接受了。。。后来因为GFW
的问题,我们的INTERNET
邮件还发生过好几次怪问题,症状千奇百怪,什么都有,不过有了前车之鉴我们已经见怪不怪了,跟外籍老板解释,他还挺兴奋因为这个理由够政治够有料。。。。。。囧

微软也很郁闷,我们是EHS 在中国大陆的第一个用户,这个系统在北美日本都用的很好,满怀信心想向中国大陆推广,结果第一个SHOWCASE
就搞的这样喇叭腔。。。。。现在这个系统在中国是不是推广开了我不知道。反正听说微软已经考虑在GFW 网内部再建个政治正确的数据中心。。。。。

发表评论