如何在Linux上安装Wireshark并捕获USB流量?
问题:如何在Linux上安装Wireshark并捕获USB流量?
我在安装 Wireshark 和捕获 USB 流量时遇到了很多问题,尤其是由于用户权限问题。
如何在 Linux 上安装 Wireshark 并捕获 USB 流量?
解答
在 Ubuntu 14.04 上测试,但可能适用于其他发行版,因为这些步骤都不是特定于 Ubuntu 的。
第一次学习本教程时,请执行所有步骤 1 -> 7。
重新启动计算机时,您必须重复第 6 步和第 7 步才能在 Wireshark 中看到 USB 接口。
1.安装Wireshark和libpcap:
sudo apt-get install wireshark libpcap0.8
- 对于 Debian、Ubuntu 和其他 Debian 衍生产品,继续执行步骤 3。
对于其他基于 Linux 的系统或其他安装方法,请参阅Wireshark Wiki,然后转到步骤 6。
3.重新配置wireshark以允许非超级用户跟踪数据包:
sudo dpkg-reconfigure wireshark-common
在提示中选择<Yes>
- 将您的用户名添加到“wireshark”用户组:
sudo usermod -a -G wireshark <your_username>
您可以通过显示您的用户名所属的组来验证它是否正确完成:
groups <your_username>
如果没有,您可以手动添加组“wireshark”:
groupadd wireshark
然后将您的用户名添加到组中(见上文)
-
重要:退出会话,然后重新登录。
-
此步骤取决于您机器上安装的内核版本。要了解内核的版本,请键入:
uname -r
对于 2.6.21 之前的内核版本,如果 debugfs 尚未安装在 /sys/kernel/debug 上,请通过发出以下命令确保它已安装在那里:
sudo mount -t debugfs / /sys/kernel/debug
对于内核版本 2.6.21 及更高版本,在内核中加载可加载模块 usbmon:
`sudo modprobe usbmon`
See [Wireshark Wiki](https://wiki.wireshark.org/CaptureSetup/USB#Linux) for more information about this differentiation.
- 如果 Wireshark 中没有出现 usbmon 接口,请使用 dumpcap(Wireshark 的命令行工具)查找接口:
sudo dumpcap -D
您应该看到 usbmon* 接口。现在显示 usbmon 接口的权限:
ls -l /dev/usbmon*
如果 usbmon* 文件有“crw-------”,那么 Wireshark 无法读取它们是正常的,因为它不是以 root 身份运行的。不要在root模式下执行wireshark,可能会损坏文件。相反,你可以给它普通用户权限:
祖兹 100033
现在 usbmon 接口应该出现在 Wireshark 中。
资料来源:
https://wiki.wireshark.org/CaptureSetup/USB#Linux
https://wiki.wireshark.org/CaptureSetup/CapturePrivileges#Most_UNIXes
https://unix.stackexchange.com/questions/55722/wireshark-couldnt-run-usr-sbin-dumpcap-in-child-process
http://anonscm.debian.org/viewvc/collab-maint/ext-maint/wireshark/trunk/debian/README.Debian?viewu003dmarkup
更多推荐

所有评论(0)