Centos-Server-Nginx之禁止网络爬虫[服务器安全]
本文“Centos-Server-Nginx之禁止网络爬虫[服务器安全]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
“网络爬虫” http://baike.百度.com/view/284853.htm
“网路爬虫”在平常保护服务的历程中,是一个常见的问题.它说:“我要一步一步往上爬,爬呀爬呀爬到服务Game Over”!呵呵,因为碰到了,所以分享一下,处理网络爬虫的办法(这里主如果在Nginx上,做禁止爬虫).
常见问题:
1.网络堵塞丢包严重(上下行数据非常,解除DDOS攻击,服务器中毒.非常下载,数据更新)
2.服务器负载太高,CPU几近跑满(针对呼应的服务配置而定);
3.服务基本瘫痪,路由瘫痪;
4.查看日记发现大量的非常拜候日记
思绪:先查看日记--解析日记--针对相关信息根源做限制(防火墙,Nginx本身都可以);
具体步骤:
一.先查看日记
cat logs/www.ready.log |grep spider -c (看有爬虫标志的拜候次数)
cat logs/www.ready.log |wc (合计总页面的拜候次数)
cat logs/www.ready.log |grep spider|awk '{print $1}'|sort -n|uniq -c|sort -nr (查看爬虫的IP地址根源)
cat logs/www.ready.log |awk '{print $1 " " substr($4,14,5)}'|sort -n|uniq -c|sort -nr|head -20(_列出1分钟内的前20位IP地址)
cat logs/www.ready.log |grep ip (列出呈现较多的IP地址,这个可以结合上面的号令利用.)
二.解析日记
晓得爬虫爬过那些内容,是什么爬虫爬的.什么时刻爬的
常见的爬虫有Google,Baidu,Yahoo这些(在下面的Nginx的http_user_agent配置处,有一些常见的爬虫)
三.改正防火墙战略,毙掉这个好奇的爬虫IP
vim /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -s 61.33.22.1/24 -j REJECT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -s 61.22.1.1/24 -j REJECT
重新启动iptables见效.
四.关于Nginx上的http_user_agent 的设置也可以很好的防备
具体的配置信息以下:
server {
listen 80;
server_name www.ready.com;
if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot")
{
return 403;
}
location ~ ^/(.*)$ {
proxy_pass http://localhost:80;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html { root html;
}
}
以上是“Centos-Server-Nginx之禁止网络爬虫[服务器安全]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |