Tag: DDOS

RHEL / CentOS 安裝 DenyHosts

DenyHosts 是一個防止暴力攻擊 SSH Server 的工具, 它會監察及分析 SSH 的 log file, 當有數次錯誤登入後, 就會將嘗試登入的 IP 地址加入到 /etc/hosts 作出封鎖。 Fail2Ban 的防護較全面, 可以透過正規表達式正義不同的 log files, 但設定較複雜, 而 Fail2Ban 只會針對 SSH Server 作防護, 而且設定較簡單。以下是在 RHEL …

RHEL / CentOS 安裝 mod_security

mod_security 是 Apache 的保安模組,可以預防多種針對網頁的攻擊,例如執行遠端程式碼, SQL Injection,路徑掃瞄等。以下是在 RHEL 及 CentOS 安裝 mod_security 的方法: 1. 安裝 mod_security 所需套件: # yum install gcc make httpd-devel libxml2 pcre-devel libxml2-devel curl-devel git 2. 下載 mod_security …

[Perl Script] 統計記錄檔 IP

如果發現伺服器有大量存取記錄, 要檢查是否 DDOS 攻擊, 可以開啟記錄檔檢查, 但資料量大的話, 要人手檢查也很困難, 所以我寫了這個簡單的 Perl Script, 用作檢查記錄檔內出現次數最多的 IP, 鎖定出現頻率最高的 IP 作檢查會容易得多。 編寫時想到有多種記錄檔也有此需要, 只要記錄檔是一行一個記錄, 而每行只有一個 IP 出現便可以用, 已經試過 apache access log 及 error log, /var/log/secure, /var/log/vsftpd.log 也可以正確使用。執行速度尚算可以, …

Apache 2.4 安裝 mod_evasive

在 Apache 2.4 編譯 mod_evasive 時遇到以下錯誤: mod_evasive20.c: In function ‘access_checker’: mod_evasive20.c:142: error: ‘conn_rec’ has no member named ‘remote_ip’ mod_evasive20.c:146: error: ‘conn_rec’ has no member named ‘remote_ip’ mod_evasive20.c:158: error: ‘conn_rec’ has …

Apache 防止 DDoS 攻擊

DDoS (distributed denial-of-service) 及 DoS (denial-of-service) 在網路上十分常見,而 DoS 攻擊所傳送的請求跟正常的請求一樣,分別在於每秒鐘發出大量請求到伺服器,使伺服器的負載增加,最常見的情況是伺服器暫停服務。 而 mod_evasive 則是一個預防 Apache 遭受 DDos 攻擊的模組,可以防止同一個 IP 對相同 URI 發出的大量請求,可設定的選項有: – 限制同一個 IP 在一定秒數內請求一個頁面或檔案的次數。 – 限制同一個 IP 一秒內只可發出 50 個請求。 …