社区站点防灌水脚本

回复 收藏
while :;
do
        tail -n 50000 /home/logs/access.log |grep '"/post'|awk '{print $1}' |sort |uniq -c |sort -n >/tmp/post1.txt
        awk '$1>80 {print $2}' /tmp/post1.txt >/tmp/post2.txt

        iptables -nvL |grep REJECT |awk '$1<5 {print $8}' >/tmp/post3.txt

        for ip in `cat /tmp/post3.txt`; do
                iptables -D INPUT -s $ip -j REJECT
        done

        for ip in `cat /tmp/post2.txt` ; do
                iptables -I INPUT -s $ip -j REJECT
        done
        sleep 1200
done
2009-10-09 16:53 举报
已邀请:
0

alvinnull

赞同来自:

学习了
0

hanlenry

赞同来自:

学习学习

0

baiyongkun

赞同来自:

希望老师可以写一下备注,这样我们在看的可以更好的理解,

0

xyyyj678 - 纸上得来终觉浅,绝知此事要躬行

赞同来自:

学习了

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: