普通用户使用usbmon(wireshark,tshark)


9

我已经用最新的cvs版本设置了libpcap。普通用户可以运行Wireshark和tshark。具体来说,它们已添加到Wireshark组中,可以从

1. eth0
2. br0
3. nflog (Linux netfilter log (NFLOG) interface)
4. nfqueue (Linux netfilter queue (NFQUEUE) interface)
5. any (Pseudo-device that captures on all interfaces)
6. lo

不幸的是,他们看不到root拥有的usbmon设备:

1. eth0
2. br0
3. nflog (Linux netfilter log (NFLOG) interface)
4. nfqueue (Linux netfilter queue (NFQUEUE) interface)
5. usbmon1 (USB bus number 1)
6. usbmon2 (USB bus number 2)
7. usbmon3 (USB bus number 3)
8. usbmon4 (USB bus number 4)
9. usbmon5 (USB bus number 5)
10. usbmon6 (USB bus number 6)
11. usbmon7 (USB bus number 7)
12. any (Pseudo-device that captures on all interfaces)
13. lo

以root用户tshark -D身份列出所有usbmon设备。但是,普通用户无法通过wireshark或tshark看到usbmon设备。

如何使Wireshk组用户可以使用usbmon设备?

Answers:


6

我通过为应该能够使用usbmon的用户创建一个组来解决此问题,然后让udev更改设备的所有权。因此,只需创建一个组,将您的用户添加到该组,然后将udev规则放入“ /etc/udev/rules.d”:

addgroup usbmon
gpasswd -a $USER usbmon
echo 'SUBSYSTEM=="usbmon", GROUP="usbmon", MODE="640"' > /etc/udev/rules.d/99-usbmon.rules

最后但并非最不重要的或者重新启动,或者确保用户实际上是在组和触发的udev或rmmodmodprobe一次。


使其成为Ansible角色:udev-usbmon
ypid 2015年

谢谢。我一直在寻找udev解决方案已有一段时间了。
FazJaxton 2015年

5

我在这里找到了答案。

为了使wireshark用户(添加到wireshark组中的用户)能够捕获USB数据,必须更改usbmon的权限:

chmod o=rw /dev/usbmon*

几乎相同的问题的另一个答案(带有替代答案)在这里


0

来自wireshark.org

您需要在具有足够权限捕获的帐户上运行Wireshark或TShark,或者需要为正在运行Wireshark或TShark的帐户提供足够的特权来捕获。


1
该帐户具有足够的特权来捕获-显然不是usbmon。
D多维数据集,
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.