顯示廣告
隱藏 ✕
Disp BBS guest 註冊 登入(i) 負載稍重
看板 Knuckles_note
作者 Knuckles (站長 那克斯)
標題 [Apache] mod_evasive 阻擋DDoS攻擊
時間 2013年07月15日 Mon. PM 04:55:54


要先安裝 EPEL (Extra Packages for Enterprise Linux) 套件庫

(CentOS 6)
$ sudo rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-x-x.noarch.rpm
更新套件庫
$ sudo yum update

(CentOS 7)
$ sudo yum install epel-release

安裝 Apache 模組 mod_evasive
$ sudo yum install mod_evasive

(Rocky Linux 9)
https://pkgs.org/download/mod_evasive 複製下載連結
$ cd /usr/local/src
$ sudo wget https://pkgs.sysadmins.ws/el9/modular/x86_64/httpd/mod_evasive-1.10.1-33.el9.x86_64.rpm
$ sudo rpm -ivh mod_evasive-1.10.1-33.el9.x86_64.rpm


編輯mod_evasive設定檔
$ sudo vim /etc/httpd/conf.d/mod_evasive.conf
    # 用來儲存黑名單的檔案大小
    DOSHashTableSize    3097
    # 同一個網址在 DOSPageInterval 內被同一個IP存取幾次時,要阻擋此IP
    DOSPageCount        2
    # 同一個IP在 DOSSiteInterval 存取了網站幾次時,要阻擋此IP
    DOSSiteCount        50
    DOSPageInterval     1
    DOSSiteInterval     1
    # 被加入阻擋名單的IP要被擋多久,預設為10秒
    # 若被阻擋期間持續攻擊時,此時間會一直加上去,所以不用設很大
    DOSBlockingPeriod   10

    #用這個目錄來記錄log檔
    DOSLogDir           "/var/lock/mod_evasive"

    # 設定白名單
    DOSWhitelist   127.0.0.1
    DOSWhitelist   192.168.*.*

建立可供 apache 寫入log的 mod_evasive 目錄
$ sudo mkdir /var/lock/mod_evasive
$ sudo chgrp apache /var/lock/mod_evasive
$ sudo chmod g+w /var/lock/mod_evasive

重啟 apache
(CentOS 6)$ sudo service httpd restart
(CentOS 7)$ sudo systemctl restart httpd


參考
 
 
 




--
※ 作者: Knuckles 時間: 2013-07-15 16:55:54
※ 編輯: Knuckles 時間: 2025-02-27 04:33:44 (台灣)
※ 看板: KnucklesNote 文章推薦值: 2 目前人氣: 0 累積人氣: 1701 
( ̄︶ ̄)b odinw, tails 說讚!
e)編輯 d)刪除 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇