Ubuntu 桌面版 Wireshark 抓包权限不足问题解决指南

Ubuntu 桌面版 Wireshark 权限不足问题完整解决指南

错误提示:

text 复制代码
Couldn't run dumpcap in child process: 权限不够

这是 Ubuntu 桌面环境中使用 Wireshark 最常见、也最容易让新手困惑的问题


一、问题根源:Wireshark ≠ dumpcap

很多人误以为:

只要 Wireshark 能打开,就应该能抓包

但实际上:

  • Wireshark(GUI):普通用户程序
  • dumpcap:真正负责抓包的底层程序

而在 Linux 中:

抓包 = 访问网卡 = 高权限操作

Ubuntu 的安全设计是:

  • 不给整个 Wireshark 提权
  • 只给 dumpcap 最小必要权限

如果 dumpcap 没权限,你就会看到:

text 复制代码
Couldn't run dumpcap in child process: 权限不够

二、官方推荐方案(一次配置,永久可用)

✔ 适用于 Ubuntu / Linux Mint / Debian 桌面版

✔ 可直接通过「桌面图标」启动

✔ 不需要 sudo

① 确认 Wireshark 完整安装

打开终端,执行:

bash 复制代码
sudo apt update
sudo apt install wireshark

安装过程中如果出现提示:

Allow non-superusers to capture packets?

👉 一定要选择 YES

如果你之前选错了,可以重新配置:

bash 复制代码
sudo dpkg-reconfigure wireshark-common

然后重新选择 YES


② 将当前用户加入 wireshark 用户组

bash 复制代码
sudo usermod -aG wireshark $USER

⚠️ 这一步之后必须注销或重启系统,否则权限不会生效。


③ 给 dumpcap 设置抓包能力(核心步骤)

Ubuntu 官方使用的是 setcap

bash 复制代码
sudo setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap

验证是否成功:

bash 复制代码
getcap /usr/bin/dumpcap

正确结果应类似:

text 复制代码
/usr/bin/dumpcap = cap_net_admin,cap_net_raw=eip

④ 用桌面图标重新启动 Wireshark

现在你可以:

  • ✔ 不用 sudo
  • ✔ 不报权限错误
  • ✔ 正常抓 Wi‑Fi / 有线 / Loopback

三、快速验证(排错用)

如果你不确定是不是权限问题,可以临时测试:

bash 复制代码
sudo wireshark
  • sudo 能抓包
  • 桌面图标不能抓包

👉 那 100% 就是 dumpcap 权限问题,按本文方案即可。


Ubuntu 不允许普通用户直接访问网卡,

所以必须:

给 dumpcap 权限,而不是给 Wireshark 权限

相关推荐
wit_yuan2 小时前
openbmc 支持mctp over pcie(三)(支持作为endpoint)
linux·服务器·嵌入式硬件
wait_luky2 小时前
NFS服务器
linux·服务器·网络
菜萝卜子2 小时前
【Linux】PVE系统创建规范的VM模版
linux·运维·服务器
小码吃趴菜2 小时前
io复用 select/poll/epoll
linux
deng-c-f2 小时前
Linux C/C++ 学习日记(63):Redis(四):事务
linux·c语言·c++
阳光九叶草LXGZXJ3 小时前
达梦数据库-学习-41-表大小快速估算
linux·运维·数据库·sql·学习
prettyxian3 小时前
【Linux】环境变量
linux·运维·服务器
MediaTea3 小时前
Python OOP 设计思想 13:封装服务于演化
linux·服务器·前端·数据库·python
阿拉伯柠檬3 小时前
MySQL复合查询
linux·数据库·mysql·面试