linux如何查看防火墙白明白
linux如何查看防火墙白明白详细介绍
在 Linux 系统中查看防火墙白名单的方法因防火墙工具而异。以下是常见防火墙的操作指南:
一、使用
firewalld(CentOS/RHEL 7+、Fedora)
firewalld 是 CentOS 7 及以上版本的默认防火墙,支持动态管理规则。
查看白名单规则:
- 查看所有区域的规则:
bashfirewall-cmd --list-all输出示例:
plaintextpublic (active)target: default
icmp-block-inversion: no
interfaces: eth0
sources: 192.168.1.0/24 # 白名单 IP 段
services: ssh dhcpv6-client
ports: 80/tcp 443/tcp # 开放的端口
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
rule family="ipv4" source address="10.0.0.5" port port="22" protocol="tcp" accept
- 关键部分:
sources字段显示允许的 IP 段,rich rules中的accept规则为白名单条目。
- 关键部分:
- 查看指定区域的规则(如
public):
bashfirewall-cmd public --list-all - 查看所有富规则(包含详细白名单配置):
bashfirewall-cmd --list-rich-rules
配置文件路径:
- 运行时规则:
/etc/firewalld/zones/public.xml(按需替换区域名) - 永久规则:
/etc/firewalld/zones/public.xml(需重启firewalld生效)
二、使用
iptables(CentOS 6、Debian、Ubuntu 等)
iptables 是老牌防火墙工具,通过命令行直接管理规则。
查看白名单规则:
- 列出所有规则(含白名单):
bashiptables输出示例:
plaintextChain INPUT (policy DROP)pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- * * 192.168.1.0/24 0.0.0.0/0 # 白名单 IP 段
10 600 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
- 关键部分:
ACCEPT规则中的source字段即为白名单 IP。
- 关键部分:
- 过滤出允许的规则(白名单):
bashiptables ACCEPT - 查看自定义链(如
WHITELIST):
bashiptables WHITELIST
配置文件路径:
- CentOS/RHEL:
/etc/sysconfig/iptables - Debian/Ubuntu:
/etc/iptables/iptables.rules
三、使用
ufw(Ubuntu 推荐)
ufw(Uncomplicated Firewall)是 iptables 的简化前端,适合新手。
查看白名单规则:
- 查看规则列表:
bashufw status numbered输出示例:
plaintextStatus: activeTo Action From
-- ------ ----
22 ALLOW IN 192.168.1.5 # 白名单 IP
80/tcp ALLOW IN Anywhere
22 (v6) ALLOW IN Anywhere (v6)
- 关键部分:
ALLOW IN规则中的From字段即为白名单 IP。
- 关键部分:
- 查看详细状态:
bashufw status verbose
配置文件路径:
- 规则文件:
/etc/ufw/user.rules - 配置文件:
/etc/ufw/ufw.conf
四、使用
nftables(新一代防火墙,替代
iptables)
nftables 是 iptables 的替代品,语法更简洁。
查看白名单规则:
bash
nft list ruleset
输出示例:
plaintext
table inet filter {chain input {
type filter hook input priority 0; policy drop;
ip saddr 192.168.1.0/24 accept # 白名单 IP 段
tcp dport 22 accept
}
}
- 关键部分:
accept规则中的ip saddr或tcp dport即为白名单配置。
配置文件路径:
- 默认规则:
/etc/nftables.conf(需手动保存)
五、判断当前防火墙工具
- 检查运行的服务:bash
systemctl status firewalldsystemctl status ufw
- 查看进程:bash
aux - 查看默认防火墙(CentOS/RHEL):bash
firewall-cmd
六、常见问题
- 规则不生效?
- 确保防火墙服务已启动:
sudo systemctl start firewalld/ufw。 - 若使用
firewalld,需执行sudo firewall-cmd --reload使永久规则生效。
- 确保防火墙服务已启动:
- 权限不足?
- 所有命令需
root权限,可在命令前加sudo或切换至root用户。
- 所有命令需
- 配置文件修改后如何生效?
iptables:sudo iptables-restore < /etc/iptables/iptables.rulesnftables:sudo nft -f /etc/nftables.conf
通过以上方法,您可以快速查看并管理 Linux 系统的防火墙白名单。根据不同的防火墙工具,选择对应的命令即可。