根据防火墙工具选择查看方式
Linux有多种防火墙管理工具,需先确认系统使用的工具:
- 若显示
active (running)
表示对应工具已启用(如firewalld
、ufw
)。
具体查看方法
firewalld(CentOS/RHEL/Fedora)
-
查看运行状态:
sudo systemctl status firewalld
若显示
active (running)
表示已启用。 -
查看防火墙规则:
sudo firewall-cmd --state # 显示运行状态(running/not running) sudo firewall-cmd --list-all # 详细规则(端口、服务、区域等)
UFW(Ubuntu/Debian)
-
查看状态:
sudo ufw status
若显示
Status: active
并列出规则(如22/tcp ALLOW
),表示已启用。 -
查看详细规则:
sudo ufw status verbose # 显示详细配置
iptables(传统工具,通用)
-
查看规则:
sudo iptables -L -n -v # 列出IPv4规则 sudo ip6tables -L -n -v # 列出IPv6规则
输出包含链(Chain)、策略(Policy)及具体规则(如ACCEPT/DROP)。
-
检查是否启用:
sudo iptables -S | grep -v "^-P" # 若无输出,可能未配置规则
nftables(iptables的替代)
- 查看规则集:
sudo nft list ruleset
输出所有表和链的规则。
常见问题解决
-
防火墙未运行:
- 启动服务:
sudo systemctl start firewalld
或sudo ufw enable
- 开机自启:
sudo systemctl enable firewalld
- 启动服务:
-
命令不存在:
- 安装工具:
# Ubuntu/Debian sudo apt install ufw firewalld # CentOS/RHEL sudo yum install firewalld
- 安装工具:
-
无规则输出:
- 可能未配置规则,默认策略为允许(ACCEPT)或拒绝(DROP),需检查默认策略:
sudo iptables -L | grep "policy"
- 可能未配置规则,默认策略为允许(ACCEPT)或拒绝(DROP),需检查默认策略:
关键注意事项
- 权限要求:所有命令需
sudo
或 root 权限。 - 多工具冲突:避免同时启用多个防火墙(如
firewalld
和ufw
),可能导致冲突。 - 发行版差异:
- CentOS 7+/RHEL 8+ 默认使用
firewalld
- Ubuntu/Debian 推荐使用
ufw
- CentOS 7+/RHEL 8+ 默认使用
- 安全建议:修改规则前备份配置(如
iptables-save > backup.rules
),防止误操作导致断网。
掌握防火墙状态是Linux系统管理的基础技能,根据发行版选择对应命令:
- firewalld →
firewall-cmd --list-all
- UFW →
ufw status
- iptables/nftables →
iptables -L
或nft list ruleset
定期检查防火墙状态和规则,确保系统安全策略与实际需求一致,遇到复杂配置时,可结合 tcpdump
或 nmap
工具验证流量是否被正确过滤。
引用说明基于Linux官方文档(firewalld.org、netfilter.org)及Ubuntu/CentOS官方手册,所有命令均在CentOS 9、Ubuntu 22.04 LTS实测验证。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6521.html