DDoS deflate是一款免费的用来防御和减轻DDoS攻击的脚本。它通过netstat监测跟踪创建大量网络连接的IP地址,在检测到某个结点超过预设的限 制时,该程序会通过APF或IPTABLES禁止或阻挡这些IP.
如何确认是否受到DDOS攻击?
执行:
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
1、安装DDoS deflate
wget http://www.inetbase.com/scripts/ddos/install.sh //下载DDoS deflate
chmod 0700 install.sh //添加权限
./install.sh //执行
卸载Ddos
2、配置DDoS deflate
5 CRON="/etc/cron.d/ddos.cron"
6 APF="/etc/apf/apf"
7 IPT="/sbin/iptables"
8
9 ##### frequency in minutes for running the script
10 ##### Caution: Every time this setting is changed, run the script with --cron
11 ##### option so that the new frequency takes effect
12 FREQ=1 #//检查时间间隔,默认1分钟
13
14 ##### How many connections define a bad IP? Indicate that below.
15 NO_OF_CONNECTIONS=150 #//最大连接数,超过这个数IP就会被屏蔽,一般默认即可
16
17 ##### APF_BAN=1 (Make sure your APF version is atleast 0.96)
18 ##### APF_BAN=0 (Uses iptables for banning ips instead of APF)
19 APF_BAN=0 #//使用APF还是iptables。推荐使用iptables,将APF_BAN的值改为0即可。
20
21 ##### KILL=0 (Bad IPs are'nt banned, good for interactive execution of script)
22 ##### KILL=1 (Recommended setting)
23 KILL=1 #//是否屏蔽IP,默认即可
24
25 ##### An email is sent to the following address when an IP is banned.
26 ##### Blank would suppress sending of mails
27 EMAIL_TO="root" #//当IP被屏蔽时给指定邮箱发送邮件,推荐使用,换成自己的邮箱即
可
28
29 ##### Number of seconds the banned ip should remain in blacklist.
30 BAN_PERIOD=600 #//禁用IP时间,默认600秒,可根据情况调整
查看/usr/local/ddos/ddos.sh文件的第117行
netstat -ntu | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -nr > $BAD_IP_LIST
修改为以下代码即可!
netstat -ntu | awk ‘{print $5}’ | cut -d: -f1 | sed -n ‘/[0-9]/p’ | sort | uniq -c | sort -nr > $BAD_IP_LIST
测试
发送请求后被禁止:
网友评论