在 CentOS 上“关闭 Sniffer”通常指停止网络抓包程序或关闭网卡混杂模式(Promiscuous Mode)。需要根据你具体使用的工具来处理,下面按常见情况说明。
一、先确认是否有 Sniffer 在运行
1️⃣ 查看是否有抓包进程
ps -ef | grep -E "tcpdump|wireshark|tshark|sniff"
常见抓包程序:
tcpdumpwiresharktshark- 自写 Python / C 抓包程序
2️⃣ 查看网卡是否处于混杂模式
ip link show
如果看到类似:
eth0:
说明网卡处于 PROMISC(混杂)模式。
二、关闭 Sniffer 的方法
✅ 方法 1:结束抓包进程(最常用)
结束 tcpdump
pkill tcpdump
或
kill -9
结束 tshark / wireshark
pkill tshark
pkill wireshark
✅ 方法 2:关闭网卡混杂模式(推荐)
ip link set eth0 promisc off
将
eth0替换为你实际的网卡名(如ens33、enp0s3)
验证:
ip link show eth0
不再显示 PROMISC 即成功。
✅ 方法 3:停止相关服务(如果是服务形式)
有些安全/监控软件会后台抓包:
systemctl list-units --type=service | grep -i sniff
如存在,可停止:
systemctl stop
systemctl disable
三、防止 Sniffer 再次启动
1️⃣ 检查定时任务
crontab -l
ls /etc/cron.*
2️⃣ 检查开机启动项
systemctl list-unit-files | grep enabled
3️⃣ 检查是否有未知内核模块
lsmod
四、安全建议(重要)
如果你不是自己开启的 Sniffer,这可能意味着:
- 系统被入侵
- 恶意程序在监听流量
建议:
# 检查监听端口
ss -antlp
# 检查异常连接
netstat -antlp
# 检查近期登录
last
五、总结(快速关闭)
pkill tcpdump
ip link set eth0 promisc off
如果你能告诉我:
- 用的是 CentOS 7 还是 8/Stream
- 是 tcpdump / wireshark / 自写程序 / 安全软件
- 是 临时关闭还是彻底卸载
我可以给你更精确的命令 ✅
