千家信息网

详述Linux中Firewalld高级配置的使用

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,IP伪装与端口转发Firewalld支持两种类型的网络地址转换IP地址伪装(masquerade)可以实现局域网多个地址共享单一公网地址上网IP地址伪装仅支持IPv4,不支持IPv6默认externa
千家信息网最后更新 2026年11月01日详述Linux中Firewalld高级配置的使用

IP伪装与端口转发

Firewalld支持两种类型的网络地址转换

IP地址伪装(masquerade)

  • 可以实现局域网多个地址共享单一公网地址上网
  • IP地址伪装仅支持IPv4,不支持IPv6
  • 默认external区域启用地址伪装

端口转发(Forward-port)

  • 也称为目的地址转换或端口映射
  • 通过端口转发,指定IP地址及端口的流量将被转发到相同计算机上的不同端口,或者转发到不同计算机上的端口

地址伪装配置

为指定区域增加地址伪装功能

firewall-cmd [--permanent] [--zone= zone] --add-masquerade [--timeout seconds] //--timeout=seconds:在一段时间后自动删除该功能

为指定区域删除地址伪装功能

firewall-cmd [--permanent] [--zone= zone] --remove-masquerade

查询指定区域是否开启地址伪装功能

firewall-cmd [--permanent] [--zone=zone] --query-masquerade

端口转发配置

列出端口转发配置

firewall-cmd [--permanent] [--zone=zone] --list-forward-ports

添加端口转发规则

firewall-cmd [--permanent] [--zone=zone] --add-forward-port=port=portid[-portid]:proto=protocol[:toport-portid[-portid]][:toaddr-address[/mask]][--timeout=seconds]

删除端口转发规则

firewall-cmd [--permanent] [--zone=zone] --remove-forward-port=port=portid[-portid]:proto=protocol[:toport=portid[-portid]][:toaddr=address[/mask]]

查询端口转发规则

firewall-cmd [--permanent] [--zone=zone] --query-forward-port-port-portid[-portid]:proto=protocol[:toport-portid[-portid]][:toaddr=address[/mask]]

Firewalld直接规则

直接规则(direct interface)

  • 允许管理员手动编写的iptables、ip6tables和ebtables 规则插入到Firewalld管理的区域中
  • 通过firewall-cmd命令中的--direct选项实现
  • 除显示插入方式之外,优先匹配直接规则

自定义规则链

Firewalld自动为配置"了 规则的区域创建自定义规则链

  • IN 区域名 deny: 存放拒绝语句,优先于"IN 区域名 _allow" 的规则
  • IN 区域名 allow: 存放允许语句

允许TCP/9000端口的入站流量

irewall-cmd --direct --add-rule ipv4 filter IN work_ allow 0 -p tcp --dport 9000 j ACCEPT
  • IN work_ allow: 匹配work区域的规则链
  • 0:代表规则优先级最高,放置在规则最前面
  • 可以增加 --permanent选项表示永久配置

查询所有的直接规则

firewall-cmd --direct --get-all-rulesipv4 filter IN_ work _allow 0 -p tcp --dport 9000 -j ACCEPT

可以增加 --permanent选项表示查看永久配置

Firewalld富语言规则

富语言(rich language)

表达性配置语言,无需了解iptables语法

用于表达基本的允许/拒绝规则、配置记录(面向syslog和auditd)、端口转发、伪装和速率限制

rule [family=""] [ source address="
" [invert "True"] ] [ destination address="
" [invert="True"] ] [ ] [ log [prefix=""] [level=""] [limit value="rate/duration"] ] [ audit ] [ acceptlrejectldrop ]

理解富语言规则命令

firewall-cmd处理富语言规则的常用选项

选项说明
-add-rich-rule= 'RULE'向指定区域中添加RULE,如果没有指定区域,则为默认区域
--remove-rich-rule= 'RULE'从指定区域中删除RULE,如果没有指定区域,则为默认区域
--query-rich-rule= 'RULE'查询RULE是否已添加到指定区域,如果未指定区域,则为默认区域。
规则存在,则返回0,否则返回1
--list-rich-rules输出指定区域的所有富规则,如果未指定区域,则为默认区域

已配置富语言规则显示方式

firewall-cmd --list-allfirewall-cmd --list-all-zones--list-rich-rules

富语言规则具体语法

source、destination、 element、 service、 port、 protocol、icmp-block、masquerade、 forward-port、 log、 audit、acceptlreject|drop

拒绝从192.168.8.101的所有流量

firewall-cmd --permanent --zone=work --add-rich-rule='rule family=ipv4 source address=192.168.8.101/32 reject'

ddress选项使用source或destination时,必须用family= ipv4 | ipv6

接受192.168.1.0/24子网端口范置8000-9000的TCP流量

firewall-cmd --permanent --one=work --add-rich-rule='rule family=ipv4 source address=192.168.1.0/24 port port=8000-9000 protocol=tcp accept'

丢弃所有icmp包

firewall-cmd --permanent --add-rich-rule='rule protocol value=icmp drop'

接受来自192.168.8.1的http流量,并记录日志

firewall-cmd --add-rich-rule='rule family=ipv4 source address=192.168.8.1/32 service name="http" log level=notice prefix= "NEW HTTP"limit value "3/s" accept'

以192.168.8.1访问http,并观察/var/log/messages

Apr 16 17:09:55 Server kernel: NEW HTTP IN=ens33 OUT=MAC=00:0c:29:69:01:c4:00:50:56:c0:00:08:08:00 SRC=192.168.8.1 DST=192.168.8.131LEN=52 TOS=0xOO PREC=0x00 TTL =64 ID=20582 DF PROTO=TCP SPT=65289 DPT=80WINDOW=8192 RES=0x00 SYN URGP=0Apr 16 17:09:55 Server kernel: NEW HTTP IN=ens33 OUT=MAC=00:0c:29:69:01:c4:00:50:56:c0:00:08:08:00 SRC=192.168.8.1 DST=192.168.8.131LEN=52 TOS=0x0O PREC=0x0O TTL =64 ID=20590 DF PROTO=TCP SPT=65291 DPT=80WINDOW=8192 RES=0x00 SYN URGP=0Apr 16 17:09:55 Server kernel: NEW HTTP IN=ens33 OUT=MAC=00:0c:29:69:01:c4:00:50:56:c0:00:08:08:00 SRC=192.168.8.1 DST=192.168.8.131LEN=52 TOS=0x0O PREC=0x0O TTL =64 ID=20602 DF PROTO=TCP SPT=65292 DPT=80WINDOW=8192 RES=0x00 SYN URGP=0

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

规则 区域 端口 地址 配置 语言 流量 功能 支持 查询 域名 不同 命令 方式 语句 语法 永久 管理 最高 相同 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 小米移动互联网科技园 博彦科技互联网金融 互联网科技工作委员会毛军 科技信息互联网 亿账通互联网科技 有木互联网科技 四个字互联网科技公司取名 滨湖区互联网智能科技产品供应 老年人脱离互联网科技的作文 互联网科技博主是什么意思 须眉科技是互联网公司吗 南山科技园互联网公司有哪些 互联网公司科技股 武汉健翔互联网络科技有限公司 玉溪新华互联网科技好不好 四川慕妮娅互联网科技有限公司 美国互联网科技公司 广东鹅鹅鹅互联网科技有限公司 银川新华互联网科技学校是国营吗 互联网科技企业文化 什么是科技互联网 广州紫鲸互联网科技有限公司 壕鑫互联网络科技 互联网科技实习生岗位职责 智腾互联网科技有限公司 阿大互联网科技有限公司 燊美集互联网科技有限公司 特约风豹互联网科技为什么扣费 上海京穆互联网科技有限公司 绵阳真晨互联网科技有限公司
0