萬盛學電腦網

 萬盛學電腦網 >> 病毒防治 >> apache防惡意刷新網站和DDOS攻擊的技巧

apache防惡意刷新網站和DDOS攻擊的技巧

因apache的被ddos攻擊和惡意刷新導致apache運行異常,占用資源過大,現在新發現一個很好的解決方法 一些朋友的應用也遇到過類似的煩惱,基本上都通過安裝mod_evasive模塊得到了較好的解決。 下面我就來以我在CentOS 5.4上安裝基於Apache2.2.9的mod_evasive經過給大家分享一下經驗,順便進一步講述一下mod_evasive的特性。計算機基礎知識 mod_evasive通過對來訪IP地址和訪問URI建立內部動態哈希表來檢測是否有攻擊,如果有如下的行為將拒絕該IP的訪問: 1. 每秒對同一頁面的請求數超過平時(原文:Requesting the same page more than a few times per second)。 2. 每秒同一個子進程有超過50次的並發請求。 3. 臨時被拒絕(在blacklist中)的時候還不斷進行請求。 mod_evasive可以非常方便的和防火牆、路由器等進行整合,進一步提高抗拒絕服務的能力。 和別的防攻擊工具一樣,mod_evasive同樣收到帶寬、系統處理能力等因素的影響,所以要想應對大規模的攻擊,最好的方式就是把mod_evasive和您的防火牆和路由器進行整合,而不是簡單的安裝成為獨立的Apache模塊。   mod_evasive在apache2.2.9上的安裝方法:   一、使用源碼安裝: 1、下載最新源碼包mod_evasive_1.10.1.tar.gz # cd /usr/local/src # wget http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz # tar -zxvf mod_evasive_1.10.1.tar.gz # cd mod_evasive # /usr/local/apache/bin/apxs -i -a -c mod_evasive20.c 說明:動態編譯apache, 這裡編譯mod_evasive20.c是應對2.X版本的apache,如果是1.x版本的apache則編譯mod_evasive.c就行了   最後出現 ############################################################# Libraries have been installed in:    /usr/local/apache/modules   If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag during linking and do at least one of the following:    - add LIBDIR to the `LD_LIBRARY_PATH' environment variable      during execution    - add LIBDIR to the `LD_RUN_PATH' environment variable      during linking    - use the `-Wl,-rpath -Wl,LIBDIR' linker flag    - have your system administrator add LIBDIR to `/etc/ld.so.conf'   See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------- chmod 755 /usr/local/apache/modules/mod_evasive20.so [activating module `evasive20' in /usr/local/apache/conf/httpd.conf] [root@localhost mod_evasive]#   ############################################################## 表示已經編譯寫入了apache模塊 查看httpd.conf文件中已經自動添加了 計算機 LoadModule evasive20_module   modules/mod_evasive20.so   至此,完成了mod_evasive的安裝,重啟apache服務後,它就開始工作了,這個時候您如果不作任何別的設置,它也可以使用默認配置為您提供良好的防攻擊能力,當然,您也可以自己進行一些參數的定制配置,添加如下參數:   <IfModule mod_evasive20.c>     DOSHashTableSize    3097     DOSPageCount        5     DOSSiteCount        50     DOSPageInterval     2     DOSSiteInterval     2     DOSBlockingPeriod   10 </IfModule>   參數簡單說明: DOSHashTableSize 3097 記錄和存放黑名單的哈西表大小,如果服務器訪問量很大,可以加大該值 DOSPageCount 5 同一個頁面在同一時間內可以被統一個用戶訪問的次數,超過該數字就會被列為攻擊,同一時間的數值可以在DosPageInterval參數中設置。 DOSSiteCount 50 同一個用戶在同一個網站內可以同時打開的訪問數,同一個時間的數值在DOSSiteInterval中設置。 DOSPageInterval 2 設置DOSPageCount中時間長度標准,默認值為1。 DOSSiteInterval 2 設置DOSSiteCount中時間長度標准。電腦入門 DOSBlockingPeriod 10 被封時間間隔秒,這中間會收到 403 (Forbidden) 的返回。   其他可選參數: DOSEmailNotify [email protected] 設置受到攻擊時接收攻擊信息提示的郵箱地址。電腦知識 DOSSystemCommand “su – someuser -c ‘/sbin/… %s …’” 受到攻擊時Apache運行用戶執行的系統命令 DOSLogDir “/var/lock/mod_dosevasive” 攻擊日志存放目錄/var/lock/mod_dosevasive 一般就可以存放到/tmp目錄   最後,嘗試用壓力測試工具看看效果吧,你會想象到不錯的效果
原創作品,謝絕轉載。有疑問請直接致QQ:125869495 微塵  apache防惡意刷新網站和DDOS攻擊的技巧.
copyright © 萬盛學電腦網 all rights reserved