在Debian系統中,使用nftables進行流量限制需要先安裝nftables軟件包,然后創建相應的規則來限制流量
sudo apt update
sudo apt install nftables
創建一個新的nftables規則集文件,例如/etc/nftables/rules.nft。在這個文件中,我們將定義流量限制的規則。
編輯/etc/nftables/rules.nft文件,添加以下內容(以下示例將限制TCP流量,但你可以根據需要修改):
#!/usr/sbin/nft -f
flush ruleset
table ip filter {
chain input {
type filter hook input priority 0;
# 限制每秒最多10個新的TCP連接
limit rate 10/second tcp dport {
type tcp dport
flags syn
accept
}
# 限制每個源IP每分鐘的請求數
limit rate 10/minute ip src
}
}
在這個示例中,我們定義了兩個規則:
limit rate 10/second tcp dport { ... })。limit rate 10/minute ip src)。保存并關閉文件。
設置nftables規則集為開機啟動:
sudo systemctl enable nftables
sudo systemctl start nftables
現在,你已經成功使用nftables限制了流量。你可以根據需要修改規則集中的規則,以滿足你的具體需求。要查看當前的nftables規則集,可以使用以下命令:
sudo nft list ruleset