前言
互連網如同現實社會一樣充滿鈎心鬥角,網站被DDOS也成為站長最頭疼的事。在沒有硬防的情況下,尋找軟體代替是最直接的方法,比如用iptables,但是iptables不能在自動屏蔽,只能手動屏蔽。今天要說的就是一款能夠自動屏蔽DDOS攻擊者IP的軟體:DDoS deflate。
DDoS deflate介紹
DDoS deflate是一款免費的用來防禦和減輕DDoS攻擊的指令碼。它通過netstat監測跟蹤建立大量網路連接的IP地址,在檢測到某個結點超過預設的限 制時,該程式會通過APF或IPTABLES禁止或阻擋這些IP.
DDoS deflate官方網站:http://deflate.medialayer.com/
如何確認是否受到DDOS攻擊?
執行:
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
執行後,將會顯示伺服器上所有的每個IP多少個串連數。
以下是我自己用VPS測試的結果:
li88-99:~# netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n1 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.31 VPS偵探 http://www.vpser.net/2311 67.215.242.196
每個IP幾個、十幾個或幾十個串連數都還算比較正常,如果像上面成百上千肯定就不正常了。
1、安裝DDoS deflate
wget http://www.inetbase.com/scripts/ddos/install.sh //下載DDoS deflatechmod 0700 install.sh //添加許可權./install.sh //執行
2、配置DDoS deflate
下面是DDoS deflate的預設配置位於/usr/local/ddos/ddos.conf ,內容如下:
##### 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秒,可根據情況調整
使用者可根據給預設設定檔加上的注釋提示內容,修改設定檔。
查看/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
喜歡折騰的可以用Web壓力測試軟體測試一下效果,相信DDoS deflate還是能給你的VPS或伺服器抵禦一部分DDOS攻擊,給你的網站更多的保護。
>>轉載請註明出處:VPS偵探 本文連結地址:http://www.vpser.net/security/ddos-deflate.html