1 114.226.9.1321 174.129.237.1571 58.60.118.1421 Address1 servers)2 118.26.131.783 123.125.1.2023 220.248.43.1194 117.36.231.2534 119.162.46.1246 219.140.232.1288 220.181.61.312311 67.215.242.196[url=][/url]
前面的数字表示IP连接的次数,可见最后一个IP 67.215.242.196连接服务器2311次,每个IP几个、十几个或几十个连接数都还算比较正常,如果像上面成百上千肯定就不正常了。 解决方法:使用DDoS deflate+iptables
DDoS deflate是一款免费的用来防御和减轻DDoS攻击的脚本。它通过netstat监测跟踪创建大量网络连接的IP地址,在检测到某个结点超过预设的限制时,该程序会通过APF或IPTABLES禁止或阻挡这些IP.
安装DDoS deflate
wget http://www.inetbase.com/scripts/ddos/install.sh #下载DDoS deflatechmod 0700 install.sh #添加权限./install.sh #执行
配置DDoS deflate
下面是DDoS deflate的默认配置位于/usr/local/ddos/ddos.conf ,默认如下:
[url=][/url]
##### Paths of the script and other filesPROGDIR="/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" ##### frequency in minutes for running the script##### Caution: Every time this setting is changed, run the script with --cron##### option so that the new frequency takes effectFREQ=1 //检查时间间隔,默认1分钟##### How many connections define a bad IP? Indicate that below.NO_OF_CONNECTIONS=150 //最大连接数,超过这个数IP就会被屏蔽,一般默认即可##### APF_BAN=1 (Make sure your APF version is atleast 0.96)##### APF_BAN=0 (Uses iptables for banning ips instead of APF)APF_BAN=1 //使用APF还是iptables。推荐使用iptables,将APF_BAN的值改为0即可。##### KILL=0 (Bad IPs are'nt banned, good for interactive execution of script)##### KILL=1 (Recommended setting)KILL=1 //是否屏蔽IP,默认即可##### An email is sent to the following address when an IP is banned.##### Blank would suppress sending of mailsEMAIL_TO="root" //当IP被屏蔽时给指定邮箱发送邮件,推荐使用,换成自己的邮箱即可 ##### Number of seconds the banned ip should remain in blacklist.BAN_PERIOD=600 //禁用IP时间,默认600秒,可根据情况调整[url=][/url]