xasdfg 2015-08-01
网站DDOS是最头疼的事。即使是国内高防的服务器,也不能100%彻底解决CC,DDOS攻击,在没有硬防的情况下,寻找软件代替是最直接的方法,比如用iptables,但是iptables不能在自动屏蔽,只能手动屏蔽。今天要说的就是一款能够自动屏蔽DDOS攻击者IP的软件:DDoSdeflate。
DDoSdeflate介绍
DDoSdeflate是一款免费的用来防御和减轻DDoS攻击的脚本。它通过netstat监测跟踪创建大量网络连接的IP地址,在检测到某个结点超过预设的限制时,该程序会通过APF或IPTABLES禁止或阻挡这些IP.
DDoSdeflate官方网站:http://deflate.medialayer.com/
如何确认是否受到DDOS攻击?
执行:
netstat-ntu|awk'{print$5}'|cut-d:-f1|sort|uniq-c|sort-n
执行后,将会显示服务器上所有的每个IP多少个连接数。
1183.60.232.8
1119.147.138.106
187.250.253.243
1Address
1servers)
4125.72.229.142
每个IP几个、十几个或几十个连接数都还算比较正常,如果像上面成百上千肯定就不正常了。
1、安装DDoSdeflate
wgethttp://www.inetbase.com/scripts/ddos/install.sh//下载DDoSdeflate
chmod0700install.sh//添加权限
./install.sh//执行
2、配置DDoSdeflate
下面是DDoSdeflate的默认配置位于/usr/local/ddos/ddos.conf
内容如下:
#####Pathsofthescriptandotherfiles
PROGDIR="/usr/local/ddos"
PROG="/usr/local/ddos/ddos.sh"
IGNORE_IP_LIST="/usr/local/ddos/ignore.ip.list"//IP地址白名单
CRON="/etc/cron.d/ddos.cron"//定时执行程序
APF="/etc/apf/apf"
IPT="/sbin/iptables"
#####frequencyinminutesforrunningthescript
#####Caution:Everytimethissettingischanged,runthescriptwith–cron
#####optionsothatthenewfrequencytakeseffect
FREQ=1//检查时间间隔,默认1分钟
#####HowmanyconnectionsdefineabadIP?Indicatethatbelow.
NO_OF_CONNECTIONS=150//最大连接数,超过这个数IP就会被屏蔽,一般默认即可
#####APF_BAN=1(MakesureyourAPFversionisatleast0.96)
#####APF_BAN=0(UsesiptablesforbanningipsinsteadofAPF)
APF_BAN=1//使用APF还是iptables。推荐使用iptables,将APF_BAN的值改为0即可。
#####KILL=0(BadIPsare’ntbanned,goodforinteractiveexecutionofscript)
#####KILL=1(Recommendedsetting)
KILL=1//是否屏蔽IP,默认即可
#####AnemailissenttothefollowingaddresswhenanIPisbanned.
#####Blankwouldsuppresssendingofmails
EMAIL_TO="root"//当IP被屏蔽时给指定邮箱发送邮件,推荐使用,换成自己的邮箱即可
#####Numberofsecondsthebannedipshouldremaininblacklist.
BAN_PERIOD=600//禁用IP时间,默认600秒,可根据情况调整用户可根据给默认配置文件加上的注释提示内容,修改配置文件。