Configurando o wireshark para usuário não root

9

Estou configurando o wireshark para ser executado como usuário não root, a la aqui , ou seja:

sudo apt-get install wireshark
sudo dpkg-reconfigure wireshark-common 
sudo usermod -a -G wireshark $USER
(restart)

Tudo isso é ótimo. Mas quando tento iniciar o wireshark como usuário do wireshark, use:

sudo -s -u $USER wireshark

Estou tendo o erro a seguir:

no protocol specified
gtk-warning ** cannot open display

A parte "sem protocolo especificado" parece bastante direta. E o gtk-warning não pode abrir a tela parece estar relacionado exatamente a esse problema .

"Você tem duas maneiras de fazer isso funcionar: conceda ou solicite root. Você (greg) pode conceder por meio de 'xhost local: root'. Ou root pode aceitar, porque pode acessar seus arquivos: 'export AUTORIDADE = / home / greg / .Xauthority '. "

Isso não faz sentido para mim. Qual era o sentido de conceder acesso ao outro usuário se ele não conseguir abrir o programa? Essa separação é feita por motivos de segurança, por isso não está fazendo a modificação acima revertendo o comentário anterior

"Isso tem a ver com controle de acesso ao seu servidor X. Você não quer que ninguém abra janelas na tela, não é. Então, se você iniciou o servidor X com sua própria conta (greg), qualquer outro usuário (como root ) não tem acesso a ele ".

TLDR; Essa é a prática padrão e a maneira como isso deve ser feito para alcançar a separação entre a conta raiz e outra conta de usuário? Parece um "hack" para mim.

user125290
fonte
possível duplicata de Como executo o wireshark, com privilégios de root?
Eric Carvalho

Respostas:

9

$USERestá aqui para ver como uma variável de shell. O terceiro comando acima adiciona seu usuário ao wireshark groupe deve ser substituído por sudo adduser <yourUser> wireshark.
Agora você deve poder invocar o wireshark como você (não é mais necessário sudo).

Guntbert
fonte
1

Foi assim que eu instalei o Wireshark e o fiz funcionar, executando-o como usuário não raiz:

Instale o Wireshark:

sudo apt-get update
sudo add-apt-repository ppa:dreibh/ppa
sudo apt-get update
sudo apt-get install wireshark

Permita que ele seja executado como usuário não root:

sudo dpkg-reconfigure wireshark-common
sudo adduser <yourUser> wireshark
sudo chmod +x /usr/bin/dumpcap
Fernando Mendioroz
fonte
11
Por que você sugere usar um ppa? O Wireshark está disponível no repositório padrão.
guntbert
0

Instale o Wireshark

Existem principalmente dois PPA fornecidos pela equipe do desenvolvedor do Wireshark 1. Versão estável 2. Versão noturna (Link para o oficial oficial dos desenvolvedores da Wireshark / PPA noturno )

  1. Usando a versão estável do Wireshark Developers (até Ubuntu Bionic)

    sudo add-apt-repository ppa:wireshark-dev/stable -y
    sudo apt update
    sudo apt install wireshark
    sudo dpkg-reconfigure wireshark-common
    sudo adduser $USER wireshark
    sudo chmod +x /usr/bin/dumpcap
    
  2. Usando o Wireshark Developers Nightly Release (suportado até o ubuntu xenial)

    sudo add-apt-repository ppa:wireshark-dev/nightly
    sudo apt update
    sudo apt install wireshark
    sudo dpkg-reconfigure wireshark-common
    sudo adduser $USER wireshark
    sudo chmod +x /usr/bin/dumpcap
    

Não se esqueça de sair do usuário atual e fazer login novamente (adicionando grupo de usuários)

Nisankh Acharjya
fonte