Ubuntu

在 Fail2Ban 中檢測 DoS 和 DDoS 的好方法是什麼?

  • November 16, 2018

我正在我的 Ubuntu Web 伺服器上配置 Fail2Ban 以防止它成為 DoS / DDoS 的受害者。我不想使用 Cloudflare,因為我必須路由我的 DNS 並使用他們的 SSl 證書。

目前,我在網上找到了一個腳本,它每秒檢查超過 1 個 HTTPHEAD請求,或者每秒檢查超過 1 個請求xmlrpc.php。我不認為這是足夠的保護,因為這些不是人們可以用來執行 DDoS 攻擊的唯一類型的請求。

我正在考慮限制給定 IP 在短視窗中可以發出的GET/POST請求的數量,但我不確定應該如何設置限制,因為載入大量 Javascript、CSS 或圖像的大頁面會產生GET在很短的時間內收到很多請求。我應該查看限制GET/POST請求,還是應該查看其他內容?為什麼?

僅通過檢查每秒的請求率很難看出好人或壞人的區別。在做出最終決定之前,您需要在您的環境中執行腳本,以查看每 5 分鐘(範例)來自單個 IP 地址的請求數對於您的網站來說是“正常的”。

一旦您計算出正常速率,應該可以使用您的腳本計算 GET 和/或 POST(取決於您的日誌文件分析)。

雖然可以在日誌文件中找到其他可疑活動進行過濾,例如掃描腳本或執行檔等(“希望”在配置良好的 Web 伺服器中導致錯誤的 GET/POST ;-))

我在自己的系統上使用了這個外部的 fail-2-ban-link 。

引用自:https://serverfault.com/questions/940317