自动分析黑名单及白名单的iptables脚本
2011-05-14 15:25
316 查看
#!/bin/bash
cat /root/block.txt |while read block
do
iptables -A INPUT -p tcp -m tcp -s $block --dport 80 -j REJECT
iptables-save
/etc/rc.d/init.d/iptables-save
done</root/block.txt
#/bin/bash
netstat -an| grep :80 | grep -v 127.0.0.1 |awk '{ print $5 }' | sort|awk -F: '{print $1,$4}' | uniq -c | awk '$1 >50 {print $1,$2}' > /root/black.txt
for i in `awk '{print $2}' /root/black.txt`
do
COUNT=`grep $i /root/black.txt | awk '{print \$1}'`
DEFINE="50"
ZERO="0"
if [ $COUNT -gt $DEFINE ];
then
grep $i /root/white.txt > /dev/null
if [ $? -gt $ZERO ];
then
echo "$COUNT $i"
iptables -I INPUT -p tcp -s $i -j DROP
fi
fi
done
cat /root/block.txt |while read block
do
iptables -A INPUT -p tcp -m tcp -s $block --dport 80 -j REJECT
iptables-save
/etc/rc.d/init.d/iptables-save
done</root/block.txt
#/bin/bash
netstat -an| grep :80 | grep -v 127.0.0.1 |awk '{ print $5 }' | sort|awk -F: '{print $1,$4}' | uniq -c | awk '$1 >50 {print $1,$2}' > /root/black.txt
for i in `awk '{print $2}' /root/black.txt`
do
COUNT=`grep $i /root/black.txt | awk '{print \$1}'`
DEFINE="50"
ZERO="0"
if [ $COUNT -gt $DEFINE ];
then
grep $i /root/white.txt > /dev/null
if [ $? -gt $ZERO ];
then
echo "$COUNT $i"
iptables -I INPUT -p tcp -s $i -j DROP
fi
fi
done
iptables -I INPUT -p tcp --dport 80 -m connlimit --connlimit-above 10 -j DROP 限制单个地址并发连接数不大于50 iptables -I INPUT -p tcp --dport 80 -m connlimit --connlimit-above 10 --connlimit-mask 24 -j DROP 限制一个C类网段的并发连接数 |
相关文章推荐
- Linux iptables简单防攻击脚本(自动过滤白名单)
- DD-WRT网站白名单控制续--防火墙脚本自动更新
- 实用防火墙(Iptables)脚本分析
- 实用防火墙(Iptables)脚本分析
- iptables自动添加规则脚本
- powershell脚本自动检核邮件出口IP是否被列入黑名单 推荐
- 实用防火墙(Iptables)脚本分析
- 自动加入黑名单脚本
- Iptables DDOS/CC 自动屏蔽脚本
- 利用脚本自动安装SQLServer的实现步骤分析
- Android APP压力测试 之Monkey日志自动分析脚本
- 自动运维的脚本分析
- 实用防火墙(Iptables)脚本分析
- 自动完成行迁移和行链接分析和统计脚本
- 使用iptables自动封IP的Shell脚本
- Android Monkey日志自动分析脚本
- iptables启动脚本分析
- 将邮件地址添加到MailScanner的白名单和黑名单的脚本
- iptables 防火墙笔记 3 :黑名单脚本