一个很实用的iptables脚本 #!/bin/bash netstat -an grep :80 awk '{print $5 }' sort awk -F: '{print $1}' uniq -c awk '$1 > 100 {print $1,$2}' > /root/bad_ip.txt cat /root/bad_ip.txt >>/root/back_bad.txt for i1 in `awk '{print $2}' /root/bad_ip sed -n '1p'` do iptables -A INPUT -p tcp -s $i1 -j REJECT done for i2 in `awk '{print $2}' /root/bad_ip sed -n '2p'` do iptables -A INPUT -p tcp -s $i2 -j REJECT done for i3 in `awk '{print $2}' /root/bad_ip sed -n '3p'` do iptables -A INPUT -p tcp -s $i3 -j REJECT done 这个脚本说有3个ip连接80端口大于100的,给iptables拒绝掉 ,怕有更多的IP同时攻击的话,可以多几行出来 ~ 自己写的,shell不会用,但是这个脚本肯定好用。 可以把这个脚本加到任务计划中,每一分钟执行一次 |