Firewalld防火墙怎么用,怎么设置?

Firewalld防火墙是Linux系统上动态管理网络规则的利器,相比iptables更直观易用,尤其适合CentOS/RHEL 7及以上环境。

Firewalld引入区域(zone)概念,将网络接口与规则集绑定,告别了iptables那套繁琐的链式操作,日常运维中,你只需要通过firewall-cmd命令就能快速开放端口、配置服务,无需重启服务即可生效,对于新手和运维老手来说,它都算得上是一种更贴近现代网络管理需求的方案。

linux系统中firewalld防火墙的使用
加载中
linux系统中firewalld防火墙的使用

Firewalld防火墙和iptables对比:谁更适合你的场景?

很多人在入门Linux防火墙时,都会纠结该选Firewalld还是iptables,两者底层都依赖Netfilter,但管理方式和设计理念差异明显。

核心区别:动态管理 vs 静态规则

  • Firewalld:采用动态规则,修改后无需重启防火墙,直接生效(除非你加了--permanent参数),规则基于区域,你可以把不同网络接口(如eth0、wlan0)划入不同信任级别,比如把内网接口放入trusted区域,公网接口放入public区域。
  • iptables:属于静态规则,每次修改后必须手动保存并重启服务,否则重启后丢失,规则是扁平化的链式处理,所有流量都得按顺序匹配,管理起来不够直观。

应用场景选择

  • 如果你的服务器主要跑在CentOS 7/8、RHEL 7+、Fedora这些现代发行版上,行业共识认为Firewalld是默认推荐,因为它能更轻松地处理动态网络环境,比如虚拟机网桥、Docker端口映射。
  • 如果你在维护老旧系统(如CentOS 6),或者需要极其精细的NAT/流量整形规则,iptables可能更直接,但绝大多数情况下,Firewalld通过firewall-cmd也能完成这些工作,只是命令写法略有不同。

表格对比:快速决策

Firewalld防火墙怎么用,怎么设置?

对比维度 Firewalld iptables
管理方式 动态规则,即时生效 静态规则,需重启
规则组织 基于区域(zone) 基于链(chain)
命令工具 firewall-cmd(推荐) iptables命令行
学习曲线 较低,概念清晰 较高,链和表复杂
适用场景 日常服务器管理、容器环境 高级网络策略、嵌入系统
默认支持 CentOS 7+、RHEL 7+、Fedora 所有Linux发行版

如果你的场景是CentOS Firewalld防火墙设置,直接上手Firewalld即可,现代文档和社区支持都更丰富。

Firewalld防火墙配置实战:从安装到放行端口

这部分聚焦Firewalld防火墙配置的具体操作,以CentOS 7/8为例,展示如何快速上手。

安装与基础状态检查

  • 确认Firewalld是否安装:rpm -qa | grep firewalld,如果未安装,执行yum install firewalld(CentOS 7)或dnf install firewalld(CentOS 8)。
  • 启动并设置开机自启:
    systemctl start firewalld
    systemctl enable firewalld
  • 查看当前状态:firewall-cmd --state,输出running表示正常。

开放端口与运行时规则

常见需求是开放某个TCP端口,比如Web服务的80端口:

  • 临时开放(仅当前会话有效,重启防火墙后失效):
    firewall-cmd --add-port=80/tcp
  • 永久开放(需要重载防火墙):
    firewall-cmd --add-port=80/tcp --permanent
    firewall-cmd --reload
  • 验证端口是否已加入规则:firewall-cmd --list-ports,会看到类似80/tcp的输出。

使用服务名替代端口号

Firewalld内置了常见服务的定义,比如http、https、ssh,直接使用服务名更简洁:

  • 开放http服务:firewall-cmd --add-service=http --permanent
  • Firewalld防火墙怎么用,怎么设置?

    查看所有可用服务:firewall-cmd --get-services,列表很长,涵盖大部分标准服务。

区域管理:让规则更精细

  • 查看默认区域:firewall-cmd --get-default-zone,通常是public。

  • 将网络接口绑定到指定区域(比如内网卡eth0绑定到trusted):

    firewall-cmd --zone=trusted --add-interface=eth0 --permanent
    firewall-cmd --reload

    trusted区域默认允许所有流量,适合内网。public区域则只允许少量服务,适合公网。

  • 查询某个接口的当前区域:firewall-cmd --get-zone-of-interface=eth0

Firewalld防火墙规则管理进阶:复杂策略与端口转发

掌握了基础开放端口后,你可能需要配置更复杂的场景,比如端口转发、富规则(rich-rule)以及限制特定IP。

端口转发:将本地端口映射到其他端口或主机

  • 将本机80端口转发到8080端口(假设本地有服务在8080监听):
    firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080 --permanent
    firewall-cmd --reload
  • 转发到其他主机(比如192.168.1.100的8080端口):
    firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.1.100:toport=8080 --permanent

    注意:端口转发需要开启IP转发,执行sysctl -w net.ipv4.ip_forward=1并写入/etc/sysctl.conf。

富规则:灵活控制来源IP和连接数

富规则语法更接近iptables,但受Firewalld管理,只允许192.168.1.0/24网段访问SSH:

firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" service name="ssh" accept' --permanent

限制某个IP的并发连接数(防止滥用):

firewall-cmd --add-rich-rule='rule family="ipv4" source address="10.0.0.1" limit value="10/m" accept' --permanent

Firewalld防火墙怎么用,怎么设置?

规则备份与恢复

  • 导出当前规则:firewall-cmd --direct --get-all-rules(直接规则)或直接备份/etc/firewalld/目录。
  • 恢复时,覆盖/etc/firewalld/目录并执行firewall-cmd --reload或重启服务。

Firewalld防火墙常见问题解答

Firewalld开放端口后不生效,可能是什么原因?

  • 检查是否忘了加--permanent参数,导致规则只在运行时生效,重启后丢失。
  • 确认端口协议是否正确(tcp/udp常见错误)。
  • 查看防火墙是否运行在panic模式(firewall-cmd --query-panic),如果开启会阻断所有流量,用firewall-cmd --panic-off关闭。
  • 检查是否被其他规则(如输入链的REJECT)覆盖,使用firewall-cmd --list-all查看区域完整规则集。

Firewalld和iptables可以共存吗?

两者底层都是Netfilter,但管理工具会冲突,如果Firewalld正在运行,它接管了iptables规则,直接使用iptables命令添加的规则会在Firewalld重载时被覆盖,官方建议二选一:要么停用Firewalld,使用iptables服务;要么坚持用firewall-cmd管理,不要混用。业内专家指出,混用会导致规则混乱,排查困难,绝大多数场景下只需使用Firewalld即可。

如何查看Firewalld当前区域的所有规则?

使用firewall-cmd --list-all --zone=public(public可替换为具体区域),输出会显示该区域下绑定的接口、允许的服务、端口、富规则、masquerade状态等,如果想查看所有区域的规则,可以遍历firewall-cmd --get-zones然后逐个查询。

Firewalld防火墙的设计初衷是让网络管理变得更直观、更动态,降低运维复杂度,从基础开放端口到高级的端口转发和富规则,它都能胜任,如果你正在使用CentOS或RHEL系列,Firewalld就是默认且最值得信赖的选择,花半小时把常用命令跑一遍,后续维护会轻松很多。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/515083.html

赞 (0)
8核16g服务器一个月多少钱,哪家性价比最高?
上一篇 2026年7月23日 21:56
服务器地址这么修改对吗?,服务器地址怎么修改
下一篇 2026年7月23日 22:00

相关推荐

  • 分布式服务器缓存技术是什么?分布式系统缓存策略有哪些

    分布式服务器缓存技术的核心在于通过多级缓存架构与智能数据一致性协议,解决高并发场景下的数据库压力问题,实现毫秒级响应与系统高可用性,在2026年的互联网基础设施环境中,单纯依赖单体数据库已无法支撑亿级用户的实时交互需求,缓存不再仅仅是数据的临时存储容器,而是整个系统架构的“交通指挥中心”,它通过空间换时间的策略……

    2026年7月6日
    18400
  • 在分享机构网站前需要了解什么,有哪些注意事项?

    对于需要获取机构专业资源的用户,分享机构网站是最高效的渠道,选择得当能事半功倍,分享机构网站推荐清单综合类分享机构网站这类平台覆盖多个行业,收录的机构资源种类齐全,它们通常聚合了券商研报、行业白皮书、机构调研纪要等内容,多数平台采用会员制,免费用户可查看部分摘要,付费用户能下载完整版,近年来,综合类分享机构网站……

    2026年7月21日
    1700
  • 荣耀ai大模型技术是什么?荣耀ai大模型技术有哪些应用场景

    荣耀AI大模型技术通过端侧算力优化与云端协同,实现了隐私安全、低延迟响应及离线可用性的全面突破,成为2026年智能终端体验升级的核心驱动力,荣耀AI大模型的核心架构与端云协同机制在2026年的智能终端市场,单纯依赖云端处理已无法满足用户对即时性的极致追求,荣耀选择了一条更为务实且高效的技术路径,即构建“端侧大模……

    2026年6月14日
    3700
  • 如何实现服务器与客户端的通信,常见的网络通信协议有哪些?

    服务器-客户端通信详解服务器-客户端(Client-Server, C/S)架构是现代网络应用最基础的通信模式,在这种模式中,客户端(请求方)和服务器(响应方)通过网络协议进行交互,以实现资源共享或服务提供,通信基本流程服务器与客户端的通信通常遵循“请求-响应”(Request-Response)模型,其具体步……

    AI资讯 2026年7月13日
    17800
  • AlpacaEval评测到底是什么意思?大模型AlpacaEval评测标准详解

    AlpacaEval是评估大语言模型能力的一套标准化基准测试,它通过让AI模型对另一AI模型的回复进行打分,来量化模型的指令遵循、安全性和逻辑推理水平,是目前衡量开源模型性能的核心参考指标,在2024年之前,评估大模型主要依赖人类专家进行主观打分,这种方式成本高且难以规模化,随着开源社区的发展,研究者发现让大模……

    2026年6月21日
    1800
  • 大模型QLoRA微调实战教程难吗?大模型微调需要多少显存

    通过QLoRA技术,你可以在消费级显卡上以极低的显存占用完成大模型微调,实现从“通用聊天”到“垂直领域专家”的平滑过渡,且成本仅为全量微调的十分之一左右,大语言模型(LLM)的爆发式增长让企业和个人开发者面临一个共同难题:通用模型懂很多,但不懂你的业务,全量微调需要昂贵的A100集群,而直接调用API又难以保护……

    2026年6月17日
    2100
  • ifix客户端服务器版本不一致怎么办,SSL连接失败如何修复

    ifix客户端和服务器版本不一致,或者客户端TLS版本与MySQL服务端要求不匹配,是导致SSL连接失败的常见原因,解决的关键在于统一版本并配置正确的TLS协议,为什么ifix版本不一致会引发SSL连接失败?很多工程师在部署ifix项目时,都遇到过这样一个场景:客户端明明网络通,防火墙也关了,数据库账号密码也对……

    2026年8月19日
    400
  • findwindowex找不到句柄怎么办?findwindowex用法详解

    FindWindowEx是Windows API中用于在指定父窗口句柄下查找第一个子窗口或控件的关键函数,它是自动化测试、UI自动化及逆向工程中定位界面元素的底层基石,在Windows桌面应用开发的浩瀚海洋中,句柄(Handle)就像是每个窗口的唯一身份证,当你需要与一个程序交互,无论是提取数据、模拟点击还是修……

    2026年7月8日
    14610
  • IIS6静态网站托管怎么设置,有什么注意事项?

    IIS6虽然早已退出微软主流支持序列,但用来托管纯静态网站,它依然是一个稳定可靠、老而弥坚的选择,关键在于做好基础配置与安全防护,很多老站长和企业的服务器上还跑着 Windows Server 2003 和 IIS6,接手这些机器的人常纠结要不要换系统,如果你的网站只是展示型官网、营销落地页或资料库,没有动态程……

    2026年8月14日
    300
  • 服务器浏览器客户端证书是什么?如何配置双向SSL认证

    服务器证书用于验证网站身份并加密传输,浏览器证书用于验证服务器合法性,客户端证书则用于双向身份认证,三者共同构成HTTPS安全通信的完整闭环,在数字化时代,网络安全不再是一个抽象的概念,而是每一次点击、每一笔交易背后的隐形守护者,很多用户在使用网银或登录内部系统时,偶尔会看到“证书错误”或“请安装客户端证书”的……

    2026年7月4日
    15100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注