理解防火墙的表及其配置功能

防火墙的表是网络流量管理的基础架构,通过不同的表和规则链实现各种网络安全功能。以下是主要防火墙表及其功能的深入解析:

主要防火墙表

1. filter表(过滤表)

  • 核心功能:数据包过滤(允许/拒绝流量)

  • 默认包含三条链

    • INPUT:处理进入本机的数据包

    • FORWARD:处理经过本机路由的数据包

    • OUTPUT:处理本机发出的数据包

  • 典型应用

    • 允许特定IP访问SSH服务

    • 阻止来自特定国家的流量

    • 限制内部用户访问某些网站

2. nat表(网络地址转换表)

  • 核心功能:IP地址和端口转换

  • 主要链

    • PREROUTING:数据包进入路由决策前修改

    • POSTROUTING:数据包离开路由决策后修改

    • OUTPUT:本地生成数据包的地址转换

  • 典型应用

    • 实现局域网共享公网IP(SNAT)

    • 端口转发(DNAT)

    • 负载均衡

3. mangle表(修改表)

  • 核心功能:修改数据包头部信息

  • 可操作所有链:可作用于所有五个链(PREROUTING, INPUT, FORWARD, OUTPUT, POSTROUTING)

  • 典型应用

    • 设置QoS标记(如设置TOS字段)

    • 修改TTL值

    • 特殊的路由标记(配合iproute2使用)

4. raw表(原始表)

  • 核心功能:数据包连接跟踪豁免

  • 主要链

    • PREROUTING

    • OUTPUT

  • 典型应用

    • 对某些流量禁用连接跟踪(NOTRACK)

    • 提高高性能网络环境效率

    • 处理特殊协议数据包

表与链的处理顺序

数据包通过防火墙时的处理流程:

  1. PREROUTING链(raw → mangle → nat)

  2. 路由决策(判断是发给本机还是转发)

  3. INPUT链 (mangle → filter)或 FORWARD链(mangle → filter)

  4. OUTPUT链(raw → mangle → nat → filter)

  5. POSTROUTING链(mangle → nat)

实际配置示例

示例1:基本的Web服务器保护(filter表)

复制代码
# 清空现有规则
iptables -F

# 设置默认策略
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# 允许已建立的连接
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# 允许本地回环
iptables -A INPUT -i lo -j ACCEPT

# 开放HTTP/HTTPS
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

# 限制SSH访问
iptables -A INPUT -p tcp --dport 22 -s 192.168.1.0/24 -j ACCEPT

示例2:NAT配置(nat表)

复制代码
# 启用IP转发
echo 1 > /proc/sys/net/ipv4/ip_forward

# 共享上网(SNAT)
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

# 端口转发(DNAT)
iptables -t nat -A PREROUTING -p tcp --dport 8080 -j DNAT --to-destination 192.168.1.100:80
iptables -A FORWARD -p tcp -d 192.168.1.100 --dport 80 -j ACCEPT

示例3:QoS标记(mangle表)

复制代码
# 标记VoIP流量
iptables -t mangle -A PREROUTING -p udp --dport 5060 -j MARK --set-mark 1
iptables -t mangle -A PREROUTING -p udp --dport 10000:20000 -j MARK --set-mark 1

# 然后可以使用tc进行流量控制

理解表之间的关系

  1. 分工协作:各表处理不同层面的网络流量问题

    • filter:安全决策(允许/拒绝)

    • nat:地址转换

    • mangle:数据包修改

    • raw:连接跟踪控制

  2. 处理顺序:数据包依次通过各表,前一表的处理结果会影响后表

  3. 性能考虑:简单规则放前面,复杂规则放后面;频繁匹配的规则放前面

通过合理配置这些表及其规则链,可以实现从基本访问控制到复杂网络服务的全方位网络安全防护。

相关推荐
桦043 分钟前
误触网络重置,笔记本电脑wifi连接不上解决方法(Win10,Win11通用)
网络·电脑
葵野寺1 小时前
【网络原理】TCP异常处理(二):连接异常
网络·网络协议·tcp/ip·异常处理
YH.1 小时前
IP 地址和 MAC 地址是如何转换的
运维·服务器·网络
老六ip加速器1 小时前
IP地址如何切换到国内别的省份?一步步指导
网络·网络协议·tcp/ip
火绒终端安全管理系统2 小时前
钓鱼网页散播银狐木马,远控后门威胁终端安全
网络·安全·web安全·网络安全·火绒安全
EasyDSS3 小时前
EasyRTC嵌入式音视频实时通话SDK技术,打造低延迟、高安全的远程技术支持
网络·人工智能
EasyGBS3 小时前
哪些因素会影响远程视频监控的质量?浅述EasyCVR视频智能诊断技术
大数据·网络·人工智能·音视频
EasyDSS3 小时前
国标GB28181视频平台EasyGBS在物业视频安防管理服务中的应用方案
网络·人工智能
一只特立独行的猫4 小时前
Docker与Vmware网络模式的对别
网络·docker·容器