温馨提示×

Debian防火墙支持哪些规则

小樊
35
2026-10-11 05:46:53
栏目: 智能运维

在 Debian 系统中,“防火墙”本身不是某一个固定组件,而通常是通过 iptables / nftables 以及上层管理工具(如 ufw、firewalld)来实现。下面按层次说明 Debian 支持的“规则类型”。


一、底层防火墙规则(iptables / nftables)

1. iptables 支持的规则

iptables 是最经典的防火墙工具,规则基于 表(table)+ 链(chain)。

常见表与规则能力

  • filter 表(默认)

    • 控制流量是否允许
    • 链:INPUT、OUTPUT、FORWARD
    • 规则示例:
      • 允许/拒绝某 IP
      • 允许/拒绝某端口
      • 基于协议(TCP/UDP/ICMP)
  • nat 表

    • 网络地址转换
    • 规则类型:
      • SNAT(源地址转换)
      • DNAT(目标地址转换)
      • 端口转发
  • mangle 表

    • 修改数据包属性
    • 如 TTL、TOS、MARK
  • raw 表

    • 控制是否走连接跟踪(NOTRACK)

常见匹配条件

  • 源/目的 IP
  • 源/目的端口
  • 协议(tcp/udp/icmp)
  • 网卡接口
  • 连接状态(NEW、ESTABLISHED、RELATED)
  • 数据包标记(MARK)

2. nftables(Debian 新推荐)

Debian 10+ 默认逐渐转向 nftables,功能更强、语法更清晰。

支持规则包括:

  • 表(ip / ip6 / inet)
  • 链(ingress / prerouting / input / forward / output / postrouting)
  • 匹配:
    • IP、端口、协议
    • 状态(ct state)
    • 接口
    • 限速(limit)
    • 日志(log)
  • 动作:
    • accept / drop / reject
    • nat / redirect
    • queue / goto

二、上层防火墙管理工具规则(用户更常用)

1. UFW(Uncomplicated Firewall)

Debian 常见简易防火墙。

支持规则:

  • 允许/拒绝:
    • 端口(22、80)
    • 服务(ssh、http)
    • IP 地址
  • 方向:
    • in / out
  • 接口规则
  • 默认策略(allow/deny)

示例:

ufw allow 22
ufw deny from 192.168.1.100
ufw enable

2. firewalld(服务器/桌面可选)

基于 nftables/iptables。

支持规则:

  • zone(信任级别)
  • service(预定义服务)
  • port
  • rich rules(复杂规则)
  • masquerade(NAT)
  • port forwarding

三、常见“规则类型”总结

类型 示例
允许规则 允许 22 端口
拒绝规则 拒绝某 IP
限制规则 限制连接速率
NAT 规则 端口映射
转发规则 允许流量转发
日志规则 记录被拒绝包
状态规则 只放行已建立连接

四、Debian 推荐做法

  • 新手/服务器:用 ufw
  • 复杂网络:用 nftables
  • 旧系统兼容:iptables

如果你愿意,我可以:

  • 给你一份 Debian 防火墙规则示例
  • 对比 ufw vs nftables
  • 针对你的使用场景(如 Web 服务器、内网网关)给具体配置

0 踩