CentOS Sniffer防火墙配置指南
在CentOS系统中,Sniffer(如Wireshark、tcpdump)用于捕获网络流量,其正常运行需允许对应流量通过防火墙,同时需通过防火墙规则限制非法访问,保障系统安全。以下是具体配置步骤:
CentOS 7及以上版本默认使用firewalld
作为防火墙管理工具(替代传统iptables
)。首先检查防火墙状态:
sudo systemctl status firewalld
若未安装,可通过sudo yum install firewalld -y
安装;若未启动,使用sudo systemctl start firewalld
启动并设置开机自启:sudo systemctl enable firewalld
。
Sniffer需监听网络接口的所有流量(包括入站、出站、转发),因此需放行对应接口的流量。假设网络接口为eth0
(可通过ip addr
命令查看),配置如下:
sudo firewall-cmd --permanent --zone=public --add-interface=eth0
sudo firewall-cmd --reload
此命令将eth0
接口加入public
区域(默认区域),允许所有流量通过。注意:生产环境不建议直接开放所有流量,需结合富规则限制访问源。
若仅需特定IP(如运维服务器192.168.1.100
)访问Sniffer,可使用**富规则(Rich Rule)**精确控制:
sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" accept'
sudo firewall-cmd --reload
此规则仅允许192.168.1.100
的流量进入public
区域,其他IP将被拒绝。
配置完成后,通过以下命令查看当前防火墙规则,确认是否生效:
sudo firewall-cmd --list-all
输出应包含interfaces
(包含eth0
)或rich rules
(包含指定IP的允许规则)。
sudo firewall-cmd --permanent --zone=public --add-log-prefix="Firewall: "
),定期检查异常流量;sudo setenforce 1
),并通过SELinux策略限制Sniffer的访问权限。eth0
、ens33
),避免误操作;--permanent
参数保存规则(重启后生效),并通过--reload
命令重新加载配置,无需重启防火墙服务;sudo firewall-cmd --list-all
检查)。