Tag: DDOS

netstat 指令 – 檢查網路狀況工具

netstat 指令可以用作檢視網路連線、網卡統計、路由設定及其他關於網路的資訊,對於進行網路上的除錯十分有用。除了 Linux 外,在其他主流作業系統也可以找到 netstat, 包括 Mac OSX, Solaris, BSD 及 Windows。netstat 使用例子:列出所有連接埠: $ netstat -a 列出所有 TCP 連接埠: $ netstat -at 列出所有 UDP 連接埠: $ netstat -au 列出所有連線的 IP: …

RHEL / CentOS 安裝 DenyHosts

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

Apache 防止 DDoS 攻擊

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