usbmon (wireshark, tshark) para usuários regulares

9

Eu tenho o libpcap configurado com a versão mais recente do cvs. Usuários regulares podem executar o Wireshark e o tshark. Especificamente, eles foram adicionados ao grupo wireshark e podem capturar de

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

Infelizmente, eles não veem os dispositivos usbmon que o root faz:

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

Como root, tshark -Dlista todos os dispositivos usbmon. No entanto, o usuário comum não pode ver os dispositivos usbmon com wireshark ou tshark.

Como posso disponibilizar os dispositivos usbmon para usuários do grupo wireshark?

d-cubed
fonte

Respostas:

6

Resolvi isso criando um grupo para os usuários que deveriam poder usar o usbmon e depois permitir que o udev alterasse a propriedade do dispositivo. Então, basta criar um grupo, adicionar seu usuário ao grupo e colocar uma regra do udev em "/etc/udev/rules.d":

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

E por último mas não menos importante reinicializar ou se certificar de que o usuário realmente está no udev grupo e gatilho ou rmmode modprobenovamente.

ypid
fonte
Tornou um papel Ansible: udev-usbmon
ypid 31/01
Obrigado. Eu tenho procurado a solução udev por um tempo agora.
precisa saber é o seguinte
5

Encontrei a resposta aqui .

Para permitir que os usuários do wireshark (aqueles adicionados ao grupo wireshark) capturem dados USB, as permissões para o usbmon precisam ser alteradas:

chmod o=rw /dev/usbmon*

Outra resposta para quase a mesma pergunta (com uma resposta alternativa) está aqui .

d-cubed
fonte
0

Do site wireshark.org :

Você precisa executar o Wireshark ou o TShark em uma conta com privilégios suficientes para capturar ou precisa fornecer a conta na qual está executando o Wireshark ou o TShark privilégios suficientes para capturar.

stderr
fonte
11
A conta tem privilégios suficientes para capturar - mas aparentemente não é comum.
usar o seguinte