Question Comment puis-je exécuter wireshark, avec des privilèges root?


Une installation standard de Wireshark n'autorise pas le programme à accéder à l'interface réseau.

Je suppose que je dois exécuter le programme avec sudo, mais vous ne savez pas comment l'ajouter à l'icône - si c'est le cas.


90
2017-10-31 12:20


origine


Parlez-vous de WireShark? Sinon, pouvez-vous créer un lien vers la page d'accueil de l'application afin que nous puissions voir de quoi vous parlez. Merci. - Oli♦
En fait, il parle probablement de Wireshark plutôt que WireShark. :-)
Tu pourrais essayer tcpdump outil sous Linux si wireshark vous donne trop de problèmes. - warfreak92


Réponses:


Pour WireShark, il existe une meilleure solution. Le bit qui a normalement besoin de root est l’application de collecte de paquets et cela peut être configuré pour permettre à certaines personnes de l’utiliser sans sudo, gksu, etc.

Dans un terminal (très important que vous soyez dans un terminal, pas seulement le dialogue Alt + F2), exécutez ceci:

sudo dpkg-reconfigure wireshark-common

Cela vous demandera si vous souhaitez autoriser un utilisateur non root à renifler. C'est ce que nous visons, alors sélectionnez Yes et frapper le retour.

Reconfiguring wireshark-common

Cela ajoute un wireshark groupe. Toute personne de ce groupe pourra renifler sans être root. C'est évidemment plus sûr que de simplement laisser n'importe qui sniff mais signifie qu'il n'y a pas de vérification de mot de passe. Techniquement, toute personne ayant accès à un ordinateur connecté avec un ordinateur wireshark compte pourra sniffer. Si cela vous convient, continuez.

Sinon, lancez-le à nouveau et sélectionnez non.

Il vous suffit ensuite d'ajouter l'utilisateur à ce groupe. Lance ça:

sudo adduser $USER wireshark

Et redémarrez ou déconnectez-vous. Lorsque vous êtes de retour, vous devriez pouvoir commencer à renifler sans être dérangé par le fait d’être root.


143
2017-10-31 12:32



Un moyen de sauter l'étape de redémarrage / déconnexion? - Taha Jahangir
Cette solution a cessé de fonctionner en 14.04 - Janghou
@Janghou travaille toujours pour moi. Avez-vous ajouté votre utilisateur au groupe wireshark et redémarré? - Oli♦
Et oui, c'est définitivement un beaucoup meilleur moyen que d’exécuter Wireshark en tant que root. Le fichier README.packaging de la source Wireshark indique que "WIRESHARK CONTIENT PLUS DE DEUX MILLIONS DE LIGNES DE CODE SOURCE. NE LES EXÉCUTEZ PAS COMME DES RACINES."
@TahaJahangir Si le redémarrage / déconnexion est incommode, vous pouvez utiliser le newgrp wireshark commande pour entrer temporairement dans le groupe après être devenu membre du wireshark groupe. - Lekensteyn


Vous pouvez également exécuter Wireshark avec les privilèges root en exécutant gksu wireshark du terminal.

Notez qu'il existe des problèmes de sécurité avec l'exécution de Wireshark dans ce mode, à savoir que tout exploit qui compromet Wireshark dispose désormais de privilèges root plutôt que de privilèges utilisateur. Ceci est plus un problème avec Wireshark que toute autre application car, de par sa nature même (capture et traitement de données arbitraires), Wireshark est plus vulnérable aux exploits que les applications de bureau classiques. Vous êtes probablement en sécurité sur un réseau SOHO, mais vous devez être conscient de ce problème avant de continuer.

Citations:


4
2017-10-25 09:36



Je viens de le configurer avec l'option --enable-setcap-install alors je ne peux pas le faire. - Smile.Hunter
Ceci est beaucoup plus dangereux et plus problématique, car il existe des bogues plus exploitables lors de l'exécution de l'interface graphique complète en tant que root, et les problèmes de configuration peuvent survenir lorsqu'un programme d'interface graphique s'exécute en tant que root. Voir la solution dpkg-reconfigure ci-dessus pour une meilleure option. - nealmcb
Pour les utilisateurs de bureau, je considère que cette solution est une solution de contournement. Lorsque vous naviguez dans l'application, tous les fichiers créés ont la permission root, et vous devez constamment changer les autorisations de fichiers pour les rendre disponibles à votre utilisateur actuel dans votre répertoire personnel. Pour les serveurs et les administrateurs système en général, sudo est la meilleure approche. - JulioHM
@JulioHM Exécuter Wireshark en tant que root est dangereux pour tout le monde, y compris pour les serveurs et les administrateurs système. - kraxor
Aux environs de la ligne 40 de Fichier doc / README.package de Wireshark, il est dit "WIRESHARK CONTIENT PLUS DE DEUX MILLIONS DE LIGNES DE CODE SOURCE. NE LES EXÉCUTEZ PAS COMME DES RACINES." Prenez cette déclaration très au sérieux.


En réalité, vous n'avez pas besoin de lancer WireShark en tant que root. Lisez s'il vous plaît Page Officielle. En bref, vous devriez faire:

sudo groupadd wireshark
sudo usermod -a -G wireshark $USER
sudo chgrp wireshark /usr/bin/dumpcap
sudo chmod o-rx /usr/bin/dumpcap
sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/dumpcap
sudo getcap /usr/bin/dumpcap

Ensuite, déconnectez-vous et reconnectez-vous.

Remarque: cette méthode a été testée sur LTS 16.04, 17.10 et 18.04.


2
2018-03-30 08:37



Cela restera des interfaces de chargement à moins que modifié. sudo chgrp USER_NAME / usr / bin / dumpcap - amrx


vous pouvez aussi essayer ceci, ouvrez le terminal, lancez cette commande

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

exécuter wireshark en tant qu'utilisateur non root


1
2017-11-27 06:13