Apache mod dosevasive 防止DDOS模組
林子大了,什麼鳥都有.
目前最常見的網站攻擊方式就是DDOS. 什麼是DDOS?
「分散式拒絕服務(DDoS:Distributed Denial of Service)攻擊指借助于客戶/伺服器技術,將多個電腦聯合起來作為攻擊平臺,對一個或多個目標發動DoS攻擊,從而成倍地提高拒絕服務攻擊的威力。通常,攻擊者使用一個偷竊帳號將DDoS主控程式安裝在一個電腦上,在一個設定的時間主控程式將與大量代理程式通訊,代理程式已經被安裝在Internet上的許多電腦上。代理程式收到指令時就發動攻擊。利用客戶/服務器技術,主控程式能在幾秒鐘內啟動成百上千次代理程式的運行。」
滿多網站架設好後出現速度和效率不理想,這時你就要分析是不是被DDOS了?
然而Apache有提供這個模組使用,方法是比較陽春,他會判斷一個IP在幾秒內訪問幾次,超過一定的限度就封鎖這個IP.
快來看看怎麼裝吧~~~
1. 先到官網下載最新模組
http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz
2. 解壓
tar -xzvf mod_dosevasive.版本.tar.gz
3. 切換到該目錄
cd mod_dosevasive
4.
如果Apache版本是v1.3, 執行 apache路徑/bin/apxs -i -a -c mod_dosevasive.c
EX:
/usr/local/apache/bin/apxs -i -a -c mod_dosevasive.c
如果Apache版本v2.0, 直行 apache目錄/bin/apxs -i -a -c mod_dosevasive20.c
EX:
/usr/local/apache/bin/apxs -i -a -c mod_dosevasive20.c
5. 安裝完畢, Restart apache.
6. 將模組加至apache:
LoadModule dosevasive20_module modules/mod_dosevasive20.so
設定(非必需):
修改 /etc/httpd/conf/httpd.conf
Apache v1.3版
<IfModule mod_dosevasive.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
</IfModule>
Apache v2.0 版本:
<IfModule mod_dosevasive20.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
</IfModule>
設定檔說名:
DOSHashTableSize 3097 記錄和存放黑名單的哈西表大小,如果伺服器訪問量很大,可以加大該值
DOSPageCount 2 同一個頁面在同一時間內可以被 同一個用戶訪問的次數,超過該數字就會被列為攻擊,同一時間的數值可以在DosPageInterval參數中設置。
DOSSiteCount 50 同一個用戶在同一個網站內可以同時打開的訪問數,同一個時間的數值在DOSSiteInterval中設置。
DOSPageInterval 1 設置DOSPageCount中時間長度標準,預設值為1。
DOSSiteInterval 1 設置DOSSiteCount中時間長度標準。
DOSBlockingPeriod 10 被封時間間隔秒,這中間會收到 403 (Forbidden) 的返回。