linux怎么查看防火墙配置?防火墙状态查询命令大全

在 Linux 系统中,查看防火墙配置是运维管理的基础操作,但不同发行版使用的防火墙工具不同,命令与配置路径也完全不同,最核心的一点是:先确认系统使用哪种防火墙服务(firewalld、iptables、ufw 等),再执行对应命令,否则容易误判安全状态,本文将从主流防火墙的查看方法、配置解读、常见问题三个层面,给出可直接落地的操作方案,并结合酷番云服务器实际运维经验,帮你快速掌握防火墙配置查看与安全核查技巧。

先确认防火墙类型:三种主流工具的区别

Linux 防火墙并非只有一种,常见的有:

  • firewalld:CentOS 7+、RHEL 7+、Fedora 默认使用,基于 zone(区域)管理,支持动态加载。
  • iptables:传统内核级防火墙工具,老版本 CentOS 6、Ubuntu 早期版本默认使用,规则直接写入内核。
  • ufw:Ubuntu 的简化前端,底层仍调用 iptables,适合初学者。

查看系统当前防火墙类型,可执行:

systemctl status firewalld
systemctl status iptables
systemctl status ufw

哪个服务处于 active 状态,即为当前生效的防火墙,若均未运行,说明系统未启用防火墙(或使用其他安全组机制,如云平台的安全组)。

firewalld 查看配置:最常用也最易出错

firewalld 的配置分为运行时配置和永久配置,查看时必须两者兼顾,否则修改后重启丢失。

1 查看默认区域与当前生效规则

firewall-cmd --get-default-zone          # 查看默认区域
firewall-cmd --get-active-zones         # 查看当前激活区域及关联接口
firewall-cmd --list-all                 # 查看当前区域的完整配置(端口、服务、规则)

2 查看永久配置

firewall-cmd --permanent --list-all     # 永久配置

注意:--list-all 只显示运行时配置,--permanent 只显示永久配置,如果两者不一致,以永久配置为准(重启后生效),建议每次查看都同时执行两个命令,并对比差异。

linux怎么查看防火墙配置?防火墙状态查询命令大全

3 查看具体端口或服务

firewall-cmd --query-port=80/tcp        # 查看 80 端口是否放行
firewall-cmd --query-service=http       # 查看 http 服务是否放行
firewall-cmd --list-ports               # 列出所有放行端口
firewall-cmd --list-services            # 列出所有放行服务

4 查看富规则与复杂规则

firewall-cmd --list-rich-rules          # 查看富规则(如来源 IP 限制、端口转发)

经验案例(酷番云):我们处理过多次客户服务器无法访问 80 端口的问题,排查时发现客户只执行了 firewall-cmd --list-all,显示 http 服务已放行,但端口仍不通,进一步检查 firewall-cmd --list-rich-rules 发现,存在一条拒绝来自某些 IP 访问 80 端口的富规则,优先级高于放行规则。所以在酷番云运维中,我们要求所有服务器防火墙核查必须执行三条命令:--list-all、--list-rich-rules、--list-all --permanent,缺一不可。

iptables 查看配置:直接查看规则链

若系统使用 iptables,查看配置的核心命令为:

iptables -L -n -v        # 列出所有链的规则,-n 不做反向解析,-v 显示流量统计
iptables -t nat -L -n    # 查看 NAT 表(端口转发、SNAT/DNAT)
iptables -t mangle -L -n # 查看 mangle 表(流量修改)

1 查看规则序号

iptables -L --line-numbers

序号在删除规则时非常有用,如 iptables -D INPUT 3 删除第 3 条规则。

2 查看默认策略

iptables -L | grep policy

默认策略通常是 ACCEPT 或 DROP,若 INPUT 默认策略为 DROP,则未显式放行的端口均不可访问。

注意:iptables 规则是立即生效的,但重启后丢失(除非已保存),查看保存文件:

  • CentOS 6:/etc/sysconfig/iptables
  • Ubuntu:/etc/iptables/rules.v4

经验案例(酷番云):某客户在云服务器上手动配置 iptables 放行 3306 端口,但未保存规则,服务器重启后数据库无法远程连接,工单排查发现 iptables 规则已全部清空。

linux怎么查看防火墙配置?防火墙状态查询命令大全

我们建议客户使用云平台安全组 + 系统防火墙双层次管理:安全组负责粗粒度放行(如只允许业务 IP 访问),系统防火墙负责精细控制(如限制并发、来源 IP),同时养成修改 iptables 后立即执行 service iptables save 或使用 iptables-save > /etc/sysconfig/iptables 保存的习惯。

ufw 查看配置:Ubuntu 专用

ufw 命令极简,适合快速查看:

ufw status verbose        # 查看详细状态,包括默认策略和放行规则
ufw status numbered       # 带序号显示,方便删除

查看配置文件:

cat /etc/default/ufw      # 默认策略配置
cat /etc/ufw/user.rules   # 用户自定义规则

ufw 底层仍是 iptables,所以也可以通过 iptables -L 查看实际生效规则,但 ufw 的显示更清晰。

查看防火墙日志:发现被拦截的流量

仅看规则不够,还要看实际拦截记录,不同工具日志位置不同:

  • firewalld:journalctl -u firewalld 或 /var/log/firewalld
  • iptables:需先开启日志功能,默认不记录,可使用 iptables -A INPUT -j LOG --log-prefix "IPTABLES-DROP:" 添加日志规则,然后查看 /var/log/messages 或 dmesg
  • ufw:/var/log/ufw.log

查看日志能快速定位问题:例如端口不通时,若日志中有大量 DROP 记录,则确认是防火墙拦截;若无记录,则可能监听地址或安全组问题。

常见问题与专业解决方案

1 查看配置与实际效果不一致

  • 原因:运行时配置与永久配置不同,或存在多条规则顺序冲突。
  • 解决:对比 --list-all 与 --list-all --permanent,检查是否有多余规则;对于 iptables,检查规则顺序,先匹配先生效。

2 无法确认防火墙是否真正生效

  • linux怎么查看防火墙配置?防火墙状态查询命令大全

    原因:云平台安全组与系统防火墙双重控制,可能系统防火墙已放行但安全组未放行。

  • 解决:先检查云平台安全组入方向规则(如酷番云控制台的安全组),再检查系统防火墙,两者必须同时放行才能访问。

3 查看配置后误改导致服务中断

  • 解决:修改前备份配置,firewalld 可使用 firewall-cmd --runtime-to-permanent 保存当前状态;iptables 使用 iptables-save > /etc/sysconfig/iptables.bak。修改后立即测试,不要同时修改多条规则,逐步操作。

相关问答模块

为什么我执行 firewall-cmd --list-all 看到端口已放行,但外部仍然无法访问?

解答:可能有三个原因。第一,云平台安全组未放行该端口,系统防火墙放行只是本地规则,云安全组在更外层拦截。第二,服务未监听在正确地址(如只监听 127.0.0.1),用 netstat -tlnp 检查监听地址。第三,存在富规则或 iptables 规则优先级更高,如前面案例中的拒绝规则。建议:按顺序检查安全组 → 防火墙规则 → 监听地址 → 服务状态,逐层排查。

iptables 和 firewalld 可以同时使用吗?会不会冲突?

解答:不建议同时使用,两者都是操作内核 netfilter 的接口,同时启用可能导致规则混乱,firewalld 本身可以管理 iptables 规则(通过 nftables 后端),但如果你手动用 iptables 命令添加规则,firewalld 无法感知,重启后可能丢失。最佳实践:CentOS 7+ 使用 firewalld,不要手动执行 iptables 命令;若确实需要 iptables,则禁用 firewalld 并安装 iptables-services,在酷番云服务器上,我们统一使用 firewalld,并通过脚本定期备份配置,确保规则可追溯。

互动

你在查看 Linux 防火墙配置时遇到过哪些奇怪问题?是端口不通还是规则丢失?欢迎在评论区分享你的排查经历,或者提出具体的防火墙场景,我会逐一给出解决方案,如果本文对你有所帮助,请点赞转发,让更多运维伙伴少走弯路。

图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/728742.html

赞 (0)
上一篇 2026年8月27日 02:49
下一篇 2026年8月27日 02:49

相关推荐

  • 安全监督网络会议如何提升基层监管效能?

    安全监督网络会议的背景与意义随着信息技术的快速发展和全球化进程的加速,安全生产管理面临着跨地域、跨部门、多层级协同的挑战,传统安全监督会议受限于时间、空间和成本,难以实现高效、实时的信息传递与问题处理,安全监督网络会议通过互联网技术,将分散在各地区、各部门的安全监督人员、管理者及相关方连接起来,构建起一个“线上……

    2025年11月4日
    02940
  • juniper srx配置手册,juniper srx配置手册

    juniper srx配置手册在网络安全架构中,Juniper SRX系列防火墙凭借其高性能包过滤与深度包检测能力,成为企业边界防护的核心组件,核心配置原则在于:严格遵循最小权限原则,实施基于区域的信任隔离,并启用应用识别(App-ID)以实现精细化访问控制, 任何未经过应用层识别的流量放行策略,都将极大增加高……

    2026年5月27日
    01915
  • 安全管家服务数据库能解决哪些具体安全问题?

    安全管家服务数据库作为企业信息安全体系的核心支撑,通过系统化、标准化的数据管理方式,为安全运维、风险管控和决策分析提供全维度支持,该数据库不仅整合了各类安全资产信息,更通过动态更新与智能分析,构建起覆盖“事前预防、事中监测、事后追溯”的全流程管理闭环,成为企业数字化转型的关键基础设施,数据库核心架构与功能模块安……

    2025年10月27日
    04460
    • 服务器间歇性无响应是什么原因?如何排查解决?

      根源分析、排查逻辑与解决方案服务器间歇性无响应是IT运维中常见的复杂问题,指服务器在特定场景下(如高并发时段、特定操作触发时)出现短暂无响应、延迟或服务中断,而非持续性的宕机,这类问题对业务连续性、用户体验和系统稳定性构成直接威胁,需结合多维度因素深入排查与解决,常见原因分析:从硬件到软件的多维溯源服务器间歇性……

      2026年1月10日
      020
  • 安装虚拟机的配置要求是什么?电脑安装虚拟机需要什么配置?

    虚拟机安装配置核心结论安装虚拟机的核心在于硬件资源的冗余度与虚拟化技术的兼容性,虚拟机的运行本质上是在物理机(宿主机)之上通过 Hypervisor(虚拟化管理程序)模拟出一套完整的硬件环境,配置要求并非一个固定数值,而是取决于宿主机基础配置 $\rightarrow$ 虚拟化软件开销 $\rightarrow……

    2026年7月14日
    01825

发表回复

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

评论列表(4条)

  • smart791fan的头像
    smart791fan 2026年8月27日 05:35

    这篇文章的内容非常有价值,我从中学习到了很多新的知识和观点。作者的写作风格简洁明了,却又不失深度,让人读起来很舒服。特别是查看部分,给了我很多新的思路。感谢分享这么好的内容!

    • 星星553的头像
      星星553 2026年8月27日 05:37

      @smart791fan:读了这篇文章,我深有感触。作者对查看的理解非常深刻,论述也很有逻辑性。内容既有理论深度,又有实践指导意义,确实是一篇值得细细品味的好文章。希望作者能继续创作更多优秀的作品!

  • sunny921boy的头像
    sunny921boy 2026年8月27日 05:35

    读了这篇文章,我深有感触。作者对查看的理解非常深刻,论述也很有逻辑性。内容既有理论深度,又有实践指导意义,确实是一篇值得细细品味的好文章。希望作者能继续创作更多优秀的作品!

  • 雨雨8495的头像
    雨雨8495 2026年8月27日 05:37

    这篇文章的内容非常有价值,我从中学习到了很多新的知识和观点。作者的写作风格简洁明了,却又不失深度,让人读起来很舒服。特别是查看部分,给了我很多新的思路。感谢分享这么好的内容!