圆山中庸 2025-05-23 16:50 采纳率: 98.6%
浏览 14
已采纳

CentOS 7 如何查看防火墙当前状态及规则配置?

在CentOS 7中,如何快速查看防火墙的当前状态及规则配置? 作为系统管理员,在CentOS 7中时常需要检查防火墙的状态与规则。可以通过命令`systemctl status firewalld`查看firewalld服务是否正在运行。若要查看防火墙的具体规则配置,可以使用`firewall-cmd --list-all`命令,它会显示包括开放端口、允许的服务、转发规则等在内的所有当前活动配置。如果想知道特定区域的规则,可使用`firewall-cmd --zone=public --list-all`(将“public”替换为具体区域名称)。此外,通过`firewall-cmd --get-active-zones`能获取当前激活的区域信息。这些命令对于排查网络连接问题或安全审计非常重要。需要注意的是,操作前确保已安装并启动firewalld服务。
  • 写回答

1条回答 默认 最新

  • Jiangzhoujiao 2025-05-23 16:50
    关注

    1. 初步了解:firewalld服务状态检查

    作为系统管理员,首先需要确认CentOS 7中的firewalld服务是否正常运行。这一步是基础且必要的。

    • 使用命令systemctl status firewalld可以查看firewalld服务的状态。
    • 如果服务未启动,可以通过systemctl start firewalld来启动服务。
    • 为了确保开机自启,执行systemctl enable firewalld

    在执行这些操作时,请确保您有足够的权限(如root或sudo)。如果没有安装firewalld,可以通过yum install firewalld进行安装。

    2. 深入探究:查看当前防火墙规则配置

    接下来,我们需要进一步深入了解当前的防火墙规则配置。

    
    firewall-cmd --list-all
    

    上述命令将列出所有活动的规则配置,包括开放端口、允许的服务、转发规则等。

    命令功能描述
    firewall-cmd --list-ports显示所有开放的端口
    firewall-cmd --list-services列出所有允许的服务

    通过表格中的命令,可以更细致地分析特定部分的规则。

    3. 高级操作:特定区域规则与激活区域信息

    对于更加复杂的场景,可能需要查看特定区域的规则或者获取当前激活的区域信息。

    
    firewall-cmd --zone=public --list-all
    firewall-cmd --get-active-zones
    

    第一条命令用于查看名为“public”的区域的所有规则,您可以根据实际需要替换为其他区域名称。

    第二条命令则帮助我们了解哪些区域当前处于激活状态。

    graph TD; A[开始] --> B{firewalld服务状态}; B --否--> C[安装并启动firewalld]; B --是--> D[查看所有规则]; D --> E[查看特定区域规则]; E --> F[结束];

    流程图展示了从检查服务状态到查看具体规则的一个完整过程。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已采纳回答 10月23日
  • 创建了问题 5月23日