在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