温馨提示×

debian防火墙能限速吗

小樊
36
2026-10-19 22:25:52
栏目: 智能运维

在 Debian 上防火墙本身(如 iptables / nftables)是可以做限速的,不过要看你说的“防火墙”是指哪一层。


一、用 iptables 限速(传统方式)

Debian 默认常带 iptables,可以用 hashlimit 或 limit 模块。

1️⃣ 简单限速(每秒包数)

iptables -A INPUT -p tcp --dport 80 -m limit --limit 10/s --limit-burst 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j DROP

⚠️ 这是按包,不是按带宽。


2️⃣ 按“连接 / IP”限速(推荐)

iptables -A INPUT -p tcp --dport 22 -m hashlimit \
  --hashlimit-mode srcip \
  --hashlimit-above 5/min \
  --hashlimit-name ssh_limit \
  -j DROP

效果:每个 IP 每分钟最多 5 次 SSH 连接。


二、用 nftables 限速(Debian 新版本推荐)

Debian 10+ 默认更推荐 nftables

table inet filter {
    chain input {
        type filter hook input priority 0;
        tcp dport 80 limit rate 1 mbytes/second accept
    }
}

支持单位:

  • packets/second
  • bytes/second
  • mbytes/second

三、真正“带宽限速”(如 100KB/s)

⚠️ iptables / nftables 不适合精确带宽限速

应使用 TC(traffic control)

tc qdisc add dev eth0 root tbf rate 100kbit burst 10k latency 50ms

或配合 htb 做更复杂控制。


四、应用层限速(更简单)

如果是具体服务:

  • Nginx:limit_rate
  • SSH:fail2ban
  • 下载工具:自身限速

总结

需求 推荐方案
防止暴力破解 iptables / nftables
控制连接频率 hashlimit
精确带宽限速 tc
Web 服务限速 Nginx

如果你告诉我:

  • Debian 版本
  • 要限什么(IP / 端口 / 带宽)
  • 内网还是公网

我可以直接给你可复制的配置。

0 踩