Security

UFW 的速率限制:設置限制

  • July 9, 2021

UFW 的手冊頁提到它可以為我設置 iptables 速率限制:

ufw 支持連接速率限制,這對於防止暴力登錄攻擊很有用。如果 IP 地址在過去 30 秒內嘗試啟動 6 個或更多連接,ufw 將拒絕連接。有關詳細資訊,請參閱 http://www.debian-administration.org/articles/187 。典型用法是:

     ufw limit ssh/tcp

不幸的是,這是我能找到的所有文件。我想堅持使用 UFW,而不是使用更複雜的 iptables 命令(以保持“簡單”)。

我將如何使用 ufw 將埠 80 上的所有傳入(而不是傳出)流量限制為每 30 秒 20 個連接?如何禁用埠 30000 到 30005 的速率限制?是否預設為所有埠啟用速率限制?

UFW 被設計為“簡單”,在這種情況下,這意味著您無法控制連接受限速率的細節。如果您想深入研究 UFW 的 Python 原始碼,您可以了解如何調整它。適當的資訊是(在我的 Ubuntu 10.04 系統上)在/usr/share/pyshared/ufw/backend_iptables.py

因此,將時間問題放在一邊,這裡是最後對您的快速問題的一些答案。

  1. 假設 10.10.10.0/24 是您的本地網路,這會將預設限制規則應用於埠 80/tcp 傳入:
ufw limit from any to 10.10.10.0/24 port http comment 'limit web'
  1. 3、預設不開啟限速。要將其添加到您想要的範圍之外的每個(目標)埠,請使用此規則。請注意,規則(即使有範圍)是原子單位,不能拆分。例如,您不能為任何埠添加規則,然後delete為特定範圍添加(不存在的)規則以將其刪除。limit也不是可接受的論點ufw default
ufw limit from any to any port 0:29999,30006:65535

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