破解DDOS的脚本

这几天服务器一直受到DDOS的攻击,目前只能通过封IP来源来暂时解决。IP不源变化多端,光靠手工来添加简直是恶梦,想了个方法,用SHELL来做。

比较简单,但很实用:)  以下内容根据作者原文进行适当的修改:)

 

1.编写脚本 
mkdir /root/bin

vi /root/bin/dropip.sh 
#!/bin/bash 
/bin/netstat -na|grep ESTABLISHED|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -rn|head -10|grep -v -E ' 192.168|127.0'|awk '{if ($2!=null && $1>4) {print $2}}'>/tmp/dropip

for i in $(cat /tmp/dropip) 
do         
    /sbin/iptables -A INPUT -s $i -j DROP         
    echo "$i kill at 'date'">>/var/log/ddos 
done

 

 

2.增加执行权限 
chmod +x /root/bin/dropip.sh

 

 

3.添加到计划任务,每分钟执行一次 
crontab -e 
*/1 * * * * /root/bin/dropip.sh

 

说明: 
以上脚本比较简单,但很实用,最重要的是第二行,获取ESTABLISHED连接数最多的前10个ip并写入临时文件/tmp/dropip,排除了内部ip段192.168|127.0开头的.通过for循环将dropip里面的ip通过iptables全部drop掉,然后写到日志文件/var/log/ddos

 

原文: 
http://blog.liuts.com/post/101/#topreply

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值