根据 aberdeen group发布的以北美几百家公司数据为样本的爬虫调查报告显示,2015 年网站流量中的真人访问仅为总流量的 54.4% ,剩余的流量由 27% 的好爬虫和 18.6% 的恶意爬虫构成。对于企业站还是个人站点,都不希望来访的是各类爬虫、蜘蛛,希望的是真人来访。那么我们如何来界定这些呢?如果都是恶意爬虫,我们是否可以屏蔽他们,减少我们的带宽支出呢?毕竟我们在租用虚拟主机等云服务产品时,带宽支出是非常大的一笔成本。
我们通过apache使用.htaccess,判断user agent,在nginx中禁用这些蜘蛛可以节省一些流量,也可以防止一些恶意的访问。
一、登记在册的恶意 user agent
1、”mozilla/4.0 (compatible; msie 7.0; windows nt 5.1; embeddedwb 14.52 from: http://www.bsalsa.com/ embeddedwb 14.52; .net clr 2.0.50727)”
下面是网站日志中的两条记录,这个 user agent 会重复访问注册页面,并获取验证码,这是垃圾留言和恶意注册的开始。
116.242.22.10 199.27.128.204 – – [30/oct/2011:04:02:15 +0800] “get /checkcode.php http/1.1” 302 286 “http://www.*.com/register.php” “mozilla/4.0 (compatible; msie 7.0; windows nt 5.1; embeddedwb 14.52 from: http://www.bsalsa.com/ embeddedwb 14.52; .net clr 2.0.50727)”
116.242.22.10 199.27.128.204 – – [30/oct/2011:04:02:19 +0800] “post /register.php http/1.1” 302 286 “http://www.*.com/register.php” “mozilla/4.0 (compatible; msie 7.0; windows nt 5.1; embeddedwb 14.52 from: http://www.bsalsa.com/ embeddedwb 14.52; .net clr 2.0.50727)”2、”mozilla/5.0 qunarbot/1.0″
这是一个无视 robots.txt 的蜘蛛,怀疑与“去哪儿”有关。
3、”mozilla/4.0 (compatible; msie 5.00; windows 98)”
61.147.91.201 173.245.48.60 – – [30/oct/2011:06:00:28 +0800] “get /mp3/%a5%d6%a5%eb%a9%60%a5%d0%a9%60%a5%c9.mp3 http/1.1” 302 286 “-” “mozilla/4.0 (compatible; msie 5.00; windows 98)”看到没?windows 98!总是抓取网站目录下的mp3文件,都是原来上传过mp3文件到网站的错。
4、”mozilla/4.0″
58.255.120.95 199.27.128.216 – – [30/oct/2011:06:01:26 +0800] “get /ikmedata/cache/fuck.php http/1.1” 404 1479 “-” “mozilla/4.0”
58.255.120.95 199.27.128.216 – – [30/oct/2011:06:01:27 +0800] “get /data/cache/fuck.php http/1.1” 404 1479 “-” “mozilla/4.0”
58.255.120.95 199.27.128.216 – – [30/oct/2011:06:01:27 +0800] “get /data/cache/fuck.php http/1.1” 404 1479 “-” “mozilla/4.0”又一个坑爹的,无尽无穷的扫描,非常恶心。
二、屏蔽恶意 user agent
使用 .htaccess 屏蔽 user agent 的方法很多,这里使用 rewrite 规则把这些 user agent 转移走,以达到屏蔽的效果。
rewritecond %{http_user_agent} “.*embeddedwb.*” [or]
rewritecond %{http_user_agent} “.*qunarbot.*” [or]
rewritecond %{http_user_agent} “.*windows 98.*” [or]
rewritecond %{http_user_agent} “^mozilla/4.0$”
rewriterule ^(.*)$ http://cao.ni.ma/使用 .htaccess 需要了解一些正则表达式语法,以正确匹配字符串。
如果你觉得有用,屏蔽恶意 user agent之前,不妨先分析一下自己的网站日志,根据自己的需要定制。可以使用 firefox+user agent switcher 测试效果,chrome 也有类似的切换 user agent的扩展程序。
经验分享 教你有效的提高网站运营的效率深圳云服务器配置关于高防服务问题-其他问题买服务器哪家好添加白名单打不开帮我看看我们问题AWS,Azure还是Google?决定用于SAP实施的最佳云的六个步骤什么是DNS,它有什么作用?腾讯云新用户能买几台服务器