spam

抵御 Spam 的进攻

网络的 spam 如幽灵般的细沙,一旦在网站里发现一个空隙,就源源不断的涌入。虽然 Drupal 的 akismet 和 spam 模块可以近乎完美的识别 spam 评论,但是他们在实施上有一个问题:spam 先提交给数据库再进行过滤。这样以来每次 cron 运行的时候都要删除数以万记的 spam ,加重了服务器端的压力,所以最好的办法是能够在 spam bot 留下评论之前就可以阻止它,于是有了各种各样的 captcha。 先用图像的 captcha, 这也是时下最流行的一种方式,但是有时图像里的数字字母过于难识别,即便是真人看到,也未必能辨别出来,所以又改用了算术题 captcha,留言是必须做一道的加法题,这种方法虽然方便了访客,但是却很容易被 spam bot 破解,因此仍然无法有效的阻止 spam 评论,所以最好有一种介于图像与简单数学题之间的辨别方式,于是就有了 Captcha Riddler 模块,可以自己设计一个问题,让访客留言的时候解答,以判断其是否是“人类”。这个模块还可以配合 i18n ,适合多语言网站使用。至于我这里,因为访客都是使用中文的,所以设置的问题很简单“一年有多少个月”,为了方面没有汉语输入法的访客输入,因此答案用阿拉伯数字即可。问题虽然简单,但是最近一段时间来成功的阻挡了 spam bot 的侵袭,也减轻了 akismet 和spam 模块的压力,效果很好,如果有同样的问题,不妨一试。

Blog分类: 

使用 Captcha + TextImage 阻挡 Spam

Drupal的Spam模块虽然功能强大,但是其运作原理类似先将spam吃掉,然后再消化(先把spam甄别出来,设置为“未发表”状态,然后在运行 cron job 的时候将其删除),这样一来还是比较耗费资源,所以决定还是用 Captcha 模块。4.7 版本的 Captcha 模块重新做了调整,为了适应没有安装 GD 的用户使用,Captcha 将原有功能分解为两个功能:数字运算 Captcha 和 TextImage Captcha。所谓数字运算,就是说在留言时必须计算一道数学题,用来证明是真人在留言;而 TextImage 则和通行的Captcha系统一样,通过辨认图片上的字母来填写留言。后者需要同时安装一个单独的 TextImage 模块。呵呵,希望这下子可以更好的阻挡 Spam。因为用来 Captcha,所以决定暂时停止 Spam 模块,并且不再要求留言时填写 Email ,希望不给留言增加麻烦。

Blog分类: 

是谁在鼓励 Blog Spammer?

是Google。

Spam一直是Blog比较头痛的问题。虽然各种各样的模块与过滤器可以非常有效的控制Spam,但是稍一不留神就会有新的评论或是Trackback Spam冒出来,有时像雪崩一样,瞬间冒出一百多条Spam。正是因为如此, 一些比较Popular的blog譬如Boing Boing,已经不再允许让访客直接留下评论,而是通过Technorati的backlink来实现评论的功能,这一点与Google的Blog比较相似,唯一不同的是Google的Blog用的是自己的blogsearch的backlink。通过这种方式虽然有效的制止了Spam,但是无疑也为用户留言制造了麻烦。举个例子,直接的留言系统好比朋友或是熟人直接照面打个招呼,而backlink式的评论却好比熟人想打个招呼还必须规规矩矩的写信,并且这信还不一定投递的到,因为你首先需要Technorati或是blogsearch收录你的blog(注意:书信的格式还有要求,必须是blog,通常还必须是主流blog,否则blogsearch等未必会买你的帐,icerocket现在还拒绝承认我的blog :< 不过还比较庆幸的是现在blog搜索的主流是Technorati与google的blogsearch,而drupal对于这两者还是很友好的。)呵呵,如果blog不能直接评论,那么blog还能作为web 2.0 的代表之一么?或者这样无法评论的blog还是blog么?用乔治华盛顿大学一个政治学教授的话说,这样的blog"[is] just a glorified press release",譬如一些美国国会议员的"blog"。都是由于Spam的存在,很多流量较大的blog却不得不使用上述间接的留言方式,而造成这种局面的一个重要因素是因为Google。

或者更准确的说是以Google为代表的搜索引擎。与垃圾邮件不同,blog spam还有另外的一个目的就是获得更高的pagerank,从而在搜索引擎的搜索结果中脱颖而出。Six Apart的VP

The prime actor that made this behavior [指Spamming] valuable was Google, which created economics around links. Links on the Web have almost direct monetary value because of Google's PageRank system.

不尽如此,Google还默认blog中出现的链接的价值要比一般网站上出现的链接的价值要高,这更鼓励Spammer。虽然这并非Google的本意;虽然Google也在使用"nofollow"等trick防止spam,但是Google的搜索算法确实鼓励了这种做法,也算是一个unanticipated consequence吧。这两天看新闻,看到Google花了大价钱买了新的搜索算法,呵呵,不知道Google会不会改进它的pagerank的算法来杜绝blog spam.

Blog分类: 

Trackback Spam!

Trackback成了垃圾信息的新场所,一晚上居然有十几条来自一个莫名其妙网站的trackback,估计是卖什么东西的。只好去翻Drupal的讨论区,发现一条相关的讨论,更改trackback模块中的function trackback_receive 函数如下: [点击观看|修改Trackback函数防止Spam] 看看效果如何。
Blog分类: