常用代码
时间: 2010-12-02 评论:0
1. 找出那些被规则禁掉的IP,嗅探器
这段代码会在当前目录下面生成黑名单,根据nginx的access日志,统计被禁掉的403访问,它们不是搜索引擎的爬虫 ,也不是本机地址。
安全提示: 这个脚本对所有IP地址都是全面封杀无误的,所以你自己在使用这个脚本之前,千万要记住,不要为了测试你的规则,而直接用你的电脑,去测试 。因为万一触发了规则,就可能会被下面的脚本所查出来,包含在内。这种状况是可以避免的。
1. 通过openvpn代理上网,如果openvpn和服务器是同一台,那么ip地址就是127.0.0.1,这个IP己经被安全的排除在外了。另外注意,如果你用了chnroute,那么就要看你的VPS是在美国还是在国内,如果在美国,则无需担心,如果在国内,那么chnroute会把路由判断为还是用原来国内的IP,还是会触发规则。建议如果你的VPS在国内,就不要用chnroute。你自己 对网站进行侵入测试,必须挂openvpn来弄。
2. 可以在下面的脚本里面增加一条 grep -v “xx.xx.xx.xx” ,把你的IP排除在外,这个时候就有一点小繁琐,因为如果你跟我一样是用adsl上网,就会需要手动查看自己的IP,每次手动查看IP也挺麻烦的,所以还是建议用第一条方案。
安全脚本文件,用于生成blacklist. 文件名: genblacklist.sh
#!/bin/sh
cat /var/log/nginx/access_log | grep " 403 " | grep -v google | grep -v sogou | grep -v baidu | grep -v "127.0.0.1" | grep -v "soso.com" | awk '{ print $1 }' | uniq | awk -F":" '{print $4}' | sort | uniq > blacklist.txt
2. 根据提供的blacklist禁止IP,解禁IP
禁止IP脚本blockip.sh
#!/bin/sh echo "Block following ip:" result="" while read LINE do /sbin/iptables -A FORWARD -s $LINE -j DROP if [ $? = "0" ];then result=$result$LINE"," fi done < /vhosts/blacklist.txt echo $result"Done";
解禁IP脚本releaseip.sh
#!/bin/sh echo "Release following ip:" result="" while read LINE do /sbin/iptables -D FORWARD -s $LINE -j DROP if [ $? = "0" ];then result=$result$LINE"," fi done < /vhosts/blacklist.txt echo $result"Done";
3. 封杀嗅探器
location ~* \.(mdb|asp|rar) {
deny all;
}
if ($http_user_agent ~ ^Mozilla/4.0$ ) {
return 403;
}
4. 利用Cron自动屏蔽非法IP
crontab -e编辑cron任务表。
增加一条*/30 * * * * /vhosts/reblock.sh
/vhosts/reblock.sh是自动执行封锁的命令。
#!/bin/sh cd /vhosts /bin/sh /vhosts/releaseip.sh /bin/sh /vhosts/genblacklist.sh /bin/sh /vhosts/blockip.sh echo "total ip in black list:" /bin/cat /vhosts/blacklist.txt | /usr/bin/wc -l
随机日志
Google Voice真鸡肋Fedora 16升级内核至3.3.1之后,atheros无线网络不稳定
破译许三多的自我营销策略
金山词霸2010 Beta版发布
zoomvps 50% 优惠码 SPRING50DD
晚上地震,逃出去躲半天,现在才回
Zend Framework 1.10.6 发布,手册同步更新
Zend Framework 1.10.0 STABLE Released
安装微软拼音输入法遭遇中止的解决方案
Discuz官方论坛挂了,有图为证
迷你飞信 测试版(v0.9.0530)
Fivebean主机和vps火热促销中
MetaWeblog API 参考手册 (1.目录)
Debian Archive Signing Key to be changed
订购Peer1托管型服务器$239.99/月可获免费ipad一部




