Por que o wireshark não funciona?

6

Eu instalei o wireshark. Ran. Quando clico em 'Interface List', recebo uma lista de 0 interfaces. Eu acho que isso significa que eu tenho algum tipo de problema de configuração.

Eu estou supondo que meu kernel não está configurado para isso? Como faço para consertar isso? Espero que haja uma solução mais fácil do que recompilar manualmente o kernel.

    
por Eric Johnson 27.04.2011 / 01:07

2 respostas

11

Você precisa executar o wireshark como root. Não tenho certeza se o lançador está configurado para fazer isso ainda, mas tente conectar isso em um terminal:

gksu wireshark

Para tornar sua vida mais fácil, sugiro que você edite o lançador (clique com o botão direito do mouse no menu → clique em editar menus → encontre wireshark e altere antes o comando com gksu ).

Como alternativa, você pode usar setcap para permitir que usuários não-root usem dumpcap (o aplicativo que faz todas as capturas que o WireShark usa):

sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/dumpcap

Isso é essencialmente do Wiki WireShark . Eu já tinha visto isso antes de postar acima, mas não estava confiante nele. Depois de vê-lo novamente nos comentários, eu fiz um teste hoje e parece funcionar.

Isso também tem um problema de segurança ...

Qualquer usuário ou processo no sistema agora pode monitorar o tráfego de rede sem a intervenção do usuário. Pense em serviço explorado ou usuário genuíno. O wiki tem outra configuração onde você pode limitar dumpcap a um grupo de usuários (e você adiciona sua conta a esse grupo), mas isso é apenas marginalmente melhor. O que acontece se o seu navegador tiver uma falha explorável que permita que alguém dispare comandos (acontece ocasionalmente)?

Aos meus olhos, isso é mais de um risco de segurança do que passar por gksu . Pelo menos assim você precisa digitar uma senha.

    
por Oli 27.04.2011 / 01:43
1

A seguinte maneira limitará a captura de pacotes para um usuário específico (s) e não executará o wireshark como root.

Primeiro, execute sudo dpkg-reconfigure wireshark-common . Selecione "sim" quando solicitado. Isso fará com que um grupo wireshark cujos membros tenham permissão para capturar pacotes.

Segundo, execute sudo usermod -a -G wireshark <yourloginname> Isso adicionará você ao grupo wireshark.

Terceiro, saia e volte a entrar. Isso aplicará as alterações do grupo.

Agora você deve ser capaz de executar o wireshark como seu usuário e permitir que você capture pacotes. Se você quiser adicionar mais usuários, repita as etapas 2 e 3 para os usuários adicionais.

Ao ler o Wiki wireshark , esse método parece a maneira mais recomendada de fazer isso.

    
por Azendale 07.12.2011 / 19:03