中国机器人每5分钟访问不存在的页面

2013年 5月2日起,某种机器人每5分钟就会访问我的网站。

大多数情况下,它会调用这个不存在的URL:

/viewtopic.php?f=3&t=849 

始终与这个用户代理

 Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; TencentTraveler ; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727) 

(= IE 6,Windows XP)

不仅它显着地扭曲了访问者的统计数据,甚至不能识别为一个机器人,所以我想这是一个垃圾邮件发送者。

我的问题是,这个客户端是做什么的,为什么它不断地调用这个页面? – 我怎么能阻止呢?

我正在使用Linux Debian的vServer。

这个客户是做什么的?

很难知道,但只是为了好奇,我会在这个url上设置一个PHP脚本来和你的朋友一起玩:

  • 获取客户端IP地址并立即扫描(打开端口,反向地址,netblock上的whois信息)
  • 转储HTTP头来看看他们。 如果它发送引荐来源,也许它来自其他地方。 寻找其他有趣的事情。
  • 回复HTTPredirect到您pipe理的一些URL,看看它是否遵循它。 想知道…
  • 回复一些JavaScript,看看它是否执行
  • 如果你有很多的带宽尝试回复一些千兆字节的垃圾:)
    • (当你在这个时候,测量他能消化数据的速度有多快)
  • 当你厌倦了和他一起玩的时候,就去tar他(如果你有足够的资源):每次连接进入一些长时间的睡眠(),然后再完成HTTP回复。 让他消耗更多的资源。

为什么它不断地调用这个页面?

你有没有试图问Google? 好像腾讯旅行者是中国最stream行的浏览器之一。 也许有人用它访问了你的网站,或者试图访问你网站上的无效URL,也许有一个软件公司试图对其浏览器用户访问的网站进行索引/扫描/caching的蜘蛛。 或者,也许这只是一个中国无聊的男孩,或者也许是受感染的个人电脑,或者……谁知道,你也应该直接问他,但是你需要知道他是谁。

我怎样才能防止呢?

要真正阻止他进行尝试,你应该把它作为垃圾邮件发送者报告给某个对他有权的人。 通常这是负责其IP范围的AS的技术联系人(或技术C,或滥用,或任何他们称之为)。 你可以从whois中find那条信息。

如果预防措施没有成功,并继续处理这些请求,可以用各种方法阻止它们:

  • 如果他们来自一个子网,并且对这个公众不感兴趣,那么在IP级别上阻塞整个子网(例如,如果它来自中国/ 8子网,并且不介意阻塞中国客户端,从整个子网)

  • 如果没有具有相同用户代理的已知合法用户,则阻止在HTTP级别与该用户代理匹配的所有请求。

为什么这些进取的机器人总是来自中国或俄罗斯?

如果那真的是真的,那么生活会更容易;)

它显着扭曲了游客的统计数字

你说的是每5分钟一次,或者大概0.003hit /秒 – 应该远低于本底。请重新解释你的问题,并解释你的意思是“扭曲”。

您可以使用mod_setenvif来匹配UserAgent的已知部分(例如TencentTraveler ),然后阻止它

 BrowserMatchNoCase TencentTraveler bad_bot Order Deny,Allow Deny from env=bad_bot 

安装fail2ban并configurationjail.conf以允许Apache jailing。 然后在apache部分添加一个failregex匹配,如下所示:

 failregex = [[]client (?P<host>\S*)[]] File does not exist: .*\.phpf=3&t=849