在日常的工作中,总会碰到异常IP创建大量的TCP连接,导致服务器响应速度慢或者无法访问;
此时可以利用脚本将这些异常的IP加入iptables黑名单;
统计异常IP并加入黑名单脚本:
1
2
3
4
5
6
7
|
#!/bin/bash netstat -na | grep ESTAB | awk '{print $5}' | awk -F: '{print $1}' | egrep - v '192.168|127.0' | uniq -c | awk '{if($2!=null && $1>1){print $2}}' > /root/dropip .txt
for i in $( cat /root/dropip .txt)
do /sbin/iptables -A INPUT -s $i -j DROP
echo "$i" >> /root/dropip .log
done |
结合任务计划每隔3分钟自动执行:
1
2
3
|
[root@lvs02 account_tcp] # crontab -l
#tcp connection is limit * /3 * * * * /root/account_tcp/drop_ip .sh %> /dev/null
|
本文转自激情燃烧的岁月博客51CTO博客,原文链接http://blog.51cto.com/liuzhengwei521/1909535如需转载请自行联系原作者
weilovepan520