当前位置:首页>Linux>网络基础学习6: Linux防火墙iptables四表五链与firewalld实战

网络基础学习6: Linux防火墙iptables四表五链与firewalld实战

  • 2026-09-10 01:25:06
网络基础学习6: Linux防火墙iptables四表五链与firewalld实战
引言

防火墙是Linux系统安全的第一道防线。CentOS 7默认使用firewalld,但底层仍兼容iptables。本文带你掌握两种工具的核心用法。

一、iptables:四表五链

四表:

  • raw:连接跟踪豁免
  • mangle:修改数据包头部(TTL、QoS)
  • nat:网络地址转换(SNAT/DNAT)
  • filter(默认):数据包过滤(允许/拒绝)

五链:INPUT(入站)、OUTPUT(出站)、FORWARD(转发)、PREROUTING(路由前)、POSTROUTING(路由后)

iptables命令语法

iptables [-t 表名] [操作选项] [链名] [匹配条件] [-j 动作]# 示例:允许来自192.168.1.50的SSH访问sudo iptables -A INPUT -p tcp -s 192.168.1.50 --dport 22 -j ACCEPT# 拒绝其他所有SSH连接sudo iptables -A INPUT -p tcp --dport 22 -j DROP# 保存规则(需安装iptables-persistent)sudo iptables-save > /etc/iptables/rules.v4

二、firewalld(CentOS 7+默认)

核心概念:区域(Zone)、服务(Service)、富规则(Rich Rules)。

区域
默认规则
适用场景
public
默认区域,仅允许指定服务
公共服务器
trusted
允许所有流量
内部可信网络
block/drop
拒绝/丢弃所有入站
严格隔离

常用命令

# 服务管理systemctl start firewalldsystemctl enable firewalld# 区域操作firewall-cmd --get-default-zonefirewall-cmd --set-default-zone=trusted# 开放服务/端口(永久生效需加--permanent并reload)firewall-cmd --add-service=http --permanentfirewall-cmd --add-port=8080/tcp --permanentfirewall-cmd --reload# 查看规则firewall-cmd --list-all

富规则示例(只允许指定IP访问SSH)

# 移除默认SSH放行firewall-cmd --remove-service=ssh --permanent# 添加富规则firewall-cmd --add-rich-rule='rule family="ipv4" source address="203.0.113.5" service name="ssh" accept' --permanentfirewall-cmd --reload

三、DNAT/SNAT与端口转发

DNAT(目标地址转换):外网访问内网服务。示例(将公网IP 203.0.113.5:80转发到内网10.0.0.2:80)

sudo firewall-cmd --permanent --add-forward-port=port=80:proto=tcp:toport=80:toaddr=10.0.0.2sudo firewall-cmd --reload

或使用iptables:

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to 192.168.1.100:80iptables -t nat -A POSTROUTING -j MASQUERADE

SNAT(源地址转换):内网设备通过公网IP访问外网。

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 公网IP

四、应急与备份

# 误锁自己后的恢复(通过物理控制台)firewall-cmd --panic-offfirewall-cmd --reload# 备份配置cp /etc/firewalld/{firewalld.conf,zones/*.xml} /backup/

💡 提示:firewalld规则优先级:富规则 > 服务/端口规则,越具体的规则优先级越高。

📎 标签:#防火墙 #iptables #firewalld #NAT #网络安全

最新文章

随机文章