上一篇                     
               
			  如何查看Linux防火墙状态
- Linux
- 2025-06-12
- 2380
 查看Linux防火墙状态常用命令: ,1. **firewalld**:
 
 
systemctl status firewalld 或 
 firewall-cmd --state ,2. **iptables**:
 service iptables status 或 
 systemctl status iptables ,3. **ufw**(Ubuntu):
 ufw status ,根据系统使用的防火墙工具选择对应命令即可快速获取状态信息。
如何查看Linux防火墙状态
在Linux系统中,防火墙是保护服务器安全的核心组件,它能控制进出系统的网络流量,防止未授权访问,无论您使用哪种Linux发行版,及时检查防火墙状态对维护系统安全至关重要,以下是几种主流工具的详细操作指南,涵盖不同发行版环境:
使用 iptables(传统工具,通用性强)
 
iptables 是Linux经典的防火墙管理工具,适用于大多数发行版(如CentOS 7、Debian、Ubuntu旧版)。
操作步骤: 
-  查看规则状态: sudo iptables -L -n -v - -L:列出规则
- -n:显示IP和端口号(不解析域名)
- -v:显示详细信息(流量计数等)
 输出示例:- Chain INPUT (policy ACCEPT 100 packets, 15000 bytes) pkts bytes target prot opt in out source destination 0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 - 关键解读: 
- policy ACCEPT:默认允许所有流量(若为- DROP则默认拒绝)。
- 规则行:显示具体拦截/放行条件(如示例中丢弃所有SSH连接请求)。
 
-  检查服务是否运行: sudo systemctl status iptables # CentOS 7等系统 sudo service iptables status # Debian/Ubuntu旧版 - 若返回 active (running)表示服务已启用。
 
- 若返回 
使用 firewalld(现代工具,推荐用于CentOS/RHEL/Fedora)
 
firewalld 提供动态防火墙管理,支持运行时更新规则,无需重启服务。
操作步骤: 
-  查看运行状态:  sudo firewall-cmd --state - 输出 running表示防火墙已启用;not running表示未启用。
 
- 输出 
-  查看详细规则与区域配置: sudo firewall-cmd --list-all 输出示例: public (active) target: default icmp-block-inversion: no interfaces: eth0 sources: services: ssh dhcpv6-client http ports: 80/tcp ... 关键解读: - (active):当前使用的区域(如public)。
- services:允许的服务(如ssh、http)。
- ports:手动放行的端口(如80/tcp)。
 
-  检查服务状态: sudo systemctl status firewalld 
使用 ufw(Ubuntu/Debian的简化工具)
 
ufw(Uncomplicated Firewall)是专为Ubuntu设计的用户友好工具,底层基于iptables。
操作步骤: 

-  查看状态与规则: sudo ufw status verbose 输出示例: Status: active Logging: on (low) Default: deny (incoming), allow (outgoing), disabled (routed) New profiles: skip To Action From -- ------ ---- 22/tcp ALLOW Anywhere 80/tcp ALLOW 192.168.1.0/24 关键解读: - Status: active:防火墙已启用。
- Default:默认策略(如拒绝所有入站流量)。
- 规则表:显示放行/拒绝的具体IP和端口。
 
-  启用/禁用防火墙: sudo ufw enable # 启用 sudo ufw disable # 禁用 
其他工具补充
- nftables(- iptables的替代品):- sudo nft list ruleset # 查看规则 
- csf(ConfigServer Security & Firewall):
 适用于cPanel等管理环境: - sudo csf -s # 查看状态 
常见问题排查
-  防火墙未运行? 
 使用以下命令启动服务:# firewalld sudo systemctl start firewalld # ufw sudo ufw enable 
-  规则未生效? - 检查是否有冲突工具(如同时启用iptables和firewalld)。
- 重启服务:sudo systemctl restart firewalld。
 
- 检查是否有冲突工具(如同时启用
总结建议
| 工具 | 适用场景 | 关键命令 | 
|---|---|---|
| iptables | 通用Linux系统 | iptables -L -n -v | 
| firewalld | CentOS/RHEL/Fedora | firewall-cmd --list-all | 
| ufw | Ubuntu/Debian | ufw status verbose | 
安全提示:
- 修改规则前务必备份:
sudo iptables-save > ~/iptables-backup.txt。- 避免远程操作时阻断SSH端口(默认22)。
掌握这些方法,您将能快速诊断Linux防火墙状态,确保服务器安全可控。
引用说明: 基于Linux官方文档(iptables、firewalld、ufw)及Red Hat/CentOS、Ubuntu系统管理指南,命令经过CentOS 7/8、Ubuntu 20.04/22.04实测验证。
 
  
			 
			 
			 
			 
			 
			 
			 
			