如何处理欺骗用户代理? 铲子假装成蜘蛛

我一直在我们的日志中跟踪几个蜘蛛,我做了一个traceroute在他们的ip找出他们实际上是EC2实例。 用户代理被列为Google bot和msnbot,但不是Google或MS IP。 有什么我可以做的,欺骗用户代理一个普遍的做法? 我在猜测,如果我禁止他们的IP(我已经完成),他们将只是开始一个新的实例,继续下去。 我不想禁止所有的EC2实例。

当你真正开始钻研日志时,你会发现有大量的机器人做标题欺骗; 他们大部分欺骗IE浏览器(其中一些失败,错别字快速发现你的代理string!)。

有一个有趣的EFF实验,用浏览器提供的数据来唯一标识用户: Panopticlick 。 在应用程序级别收集更多信息以尝试阻止可能会让你在某个地方,因为非浏览器节点将无法返回某些字段。

但是,同样的道理,阻止他们的IP不可能长时间工作,试图根据用户代理(或任何其他独特的标准)来阻止,如果他们决心要蜘蛛你不可能长时间工作。 最后,试图阻止networking上的每一个stream氓软件都不值得花时间或精力。 只需设置你的robots.txt文件,留意那些试图用SQL注入或类似命令来攻击你的恶意程序,而且很容易。