linux 如何查看防火墙状态及允许的端口列表?
在CentOS 7中查看防火墙状态,核心是通过命令行操作 firewalld (系统默认防火墙服务),最常用的命令为:
查看防火墙当前运行状态:
systemctl status firewalld
- 输出中若显示“active (running) ”,表示防火墙已开启;若显示“inactive (dead) ”,则表示已关闭。
快速判断防火墙是否开启:
firewall-cmd --state
- 直接返回“running ”(开启)或“not running ”(关闭),结果更简洁。
需要我进一步说明如何开启、关闭或重启CentOS 7的防火墙吗?这样你可以在查看状态后直接进行后续操作。
在不同系统中查看防火墙允许的端口列表,核心命令因默认防火墙工具不同而有差异,以下是最常用的两种系统操作:
- CentOS/RHEL 7/8(默认 firewalld)
查看所有允许的端口(包括永久和临时规则):
firewall-cmd --list-ports
示例输出: 80/tcp 3306/tcp 5901/udp ,直接显示允许的端口及协议。
查看永久生效的允许端口(需加 --permanent 参数):
firewall-cmd --permanent --list-ports
- Ubuntu/Debian(默认 ufw)
查看防火墙状态及允许的端口规则:
ufw status
或
ufw status numbered
(带规则编号,更清晰)
示例输出: 80/tcp ALLOW Anywhere ,明确显示允许的端口、协议及来源。
需要我针对你正在使用的系统(比如之前提到的 CentOS 7),进一步说明如何添加或删除允许的端口规则吗?