检测到假用户代理(又名刮板)请求获取我的Web服务器?

时间:2018-10-25 11:15:10

标签: security nginx iptables

我有一台Nginx服务器可以服务两个网站。我的问题是,是否有一种方法可以检测和阻止所有在标头上修改了其用户代理的Get请求!然后,我可以确定没有人可以刮我的帖子。我很想在这种方法中使用Net-Filter,但是我不确定它是否功能如此强大!

1 个答案:

答案 0 :(得分:1)

简单答案:否。

您可以查看用户代理标头,具体取决于抓取工具,这些标头可能会揭示它并使其显而易见,但是,没有什么阻止我(或其他任何人)制作与普通浏览器相同的用户代理。客户端,无论是浏览器还是程序员编写的脚本。

您可以尝试白名单,阻止所有不在其上的内容,但是随后您很快就会阻止所有非主流浏览器,更不用说您还可以轻松开始阻止主流浏览器的新版本。它需要不断的更新和维护,并且仍然非常容易规避。

黑名单根本行不通,因为您无法预测开发人员可以“告诉”刮板使用哪种用户代理。

现在,从理论上讲,您可以分析用户行为并据此做出决策。但是,这将需要大量的工作,并且很容易成为对合法流量的滋扰,而这可能不利于像样的刮板。