在centos系统中,防火墙是保护系统安全的重要组件之一,了解如何查看和管理防火墙状态对于确保系统的安全性至关重要,下面将详细介绍如何在CentOS中查看防火墙状态及其相关操作。
一、查看防火墙状态
1、使用systemctl
命令:

打开终端。
输入以下命令并按回车键:
- systemctl status firewalld
如果防火墙的状态参数Active是active (running),则防火墙为开启状态,如果防火墙的状态参数是inactive (dead),则防火墙为关闭状态。
输出可能如下:
- ● firewalld.service firewalld dynamic firewall daemon
- Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
- Active: inactive (dead) since Tue 20240618 14:35:27 EDT; 1min 29s ago
- Docs: man:firewalld(1)
在这个例子中,防火墙处于关闭状态。
2、使用firewallcmd
命令:

打开终端。
输入以下命令并按回车键:
- firewallcmd state
输出可能是“running”或“not running”,分别表示防火墙正在运行或未运行。
输出可能如下:
- not running
或者:
- running
二、管理防火墙状态
1、启动防火墙:

- sudo systemctl start firewalld
2、停止防火墙:
- sudo systemctl stop firewalld
3、开机自动启动防火墙:
- sudo systemctl enable firewalld
4、开机自动禁用防火墙:
- sudo systemctl disable firewalld
三、查看和管理防火墙端口
1、查看当前活动(临时)开放的端口:
- sudo firewallcmd listports
2、查看永久配置中开放的端口:
- sudo firewallcmd listports permanent
3、开放端口:
- sudo firewallcmd zone=public addport=80/tcp permanent
添加端口后,必须用命令重新加载一遍才会生效:
- sudo firewallcmd reload
4、关闭端口:
- sudo firewallcmd zone=public removeport=80/tcp permanent
之后同样需要重新加载配置:
- sudo firewallcmd reload
四、批量开放或关闭端口
1、查看所有开放的端口:
- sudo firewallcmd zone=public listports
2、批量开放端口:
- sudo firewallcmd zone=public addport=4000045000/tcp permanent
3、批量关闭端口:
- sudo firewallcmd zone=public removeport=4000045000/tcp permanent
五、刷新防火墙设置
更新防火墙的设置,使上述修改生效:
- sudo firewallcmd reload
六、常见问题与解答(FAQs)
Q1: 如何更改防火墙的默认区域?
A1: 要更改防火墙的默认区域,可以使用以下命令:
- sudo firewallcmd setdefaultzone=public
然后重新加载防火墙设置:
- sudo firewallcmd reload
Q2: 如何查看防火墙的区域和接口配置?
A2: 使用以下命令可以查看防火墙的区域和接口配置:
- sudo firewallcmd listallzones
这个命令会列出所有区域以及每个区域的接口配置。