提示:
根据web日志或者网络连接数,监控当某个ip并发数或者短时内PV达到100,即调命令封掉对应的ip,监控频率每隔3分钟。防火墙命令为:iptables -A INPUT -s 10.0.1.10 -J drop
解答:
web,也可以分析日志,把单IP PV数高的封掉。按天定义PV=1000即封掉
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#!/bin/bash while true
do awk '{print $1}' access.log| grep - v "^$" | sort | uniq -c > /tmp/tmp .log
exec < /tmp/tmp .log
while read line
do
ip=` echo $link| awk '{print $2}' `
count=` echo $line| awk '{print $1}' `
if [ $count -gt 3 ] && [ `iptables -L -n| grep "$ip" | wc -l` -lt 1 ]
then
iptables -I INPUT -s $ip -j DROP
echo "$line is dropped" >> /tmp/droplist .log
fi
done
sleep 5
done |
本文转自 baishuchao 51CTO博客,原文链接:http://blog.51cto.com/baishuchao/1943942