exécution de wirehark «Lua: erreur lors du chargement»

16

En exécutant Wireshark en 14.04, j'ai eu cette erreur. Que dois-je faire pour résoudre ce problème?

Lua: Erreur lors du chargement: [chaîne "/usr/share/wireshark/init.lua"{:46: dofile a été désactivé en raison de l'exécution de Wireshark en tant que superutilisateur. Voir http://wiki.wireshark.org/CaptureSetup/CapturePrivileges pour obtenir de l'aide sur l'exécution de Wireshark en tant qu'utilisateur non privilégié.

Mohammad Reza Rezwani
la source

Réponses:

12

C'est parce que (je suppose) que vous exécutez Wireshark en tant que root

À partir du lien qui vous a été donné dans le message:

Vous devez exécuter Wireshark ou TShark sur un compte avec des privilèges suffisants pour capturer, ou devez donner au compte sur lequel vous exécutez Wireshark ou TShark des privilèges suffisants pour capturer. La façon dont cela se fait diffère d'un système d'exploitation à l'autre.

Pour être sécurisé (au moins d'une certaine manière), il est recommandé que même un administrateur s'exécute toujours dans un compte avec des privilèges utilisateur (limités) et ne démarre que les processus qui ont vraiment besoin des privilèges administrateur. La page Sécurité explique pourquoi c'est une bonne idée.

Définition des privilèges réseau pour dumpcap

  1. Assurez-vous que votre noyau Linux et votre système de fichiers prennent en charge les capacités de fichiers et que vous avez également installé les outils nécessaires.

  2. "setcap 'CAP_NET_RAW + eip CAP_NET_ADMIN + eip' / usr / bin / dumpcap"

  3. Démarrez Wireshark en tant que non root et assurez-vous que vous voyez la liste des interfaces et que vous pouvez effectuer une capture en direct.

donc ...

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

n'oubliez pas d'ajouter l'utilisateur au groupe WireShark

sudo usermod -aG wireshark $USER

et (!) déconnexion et reconnexion au logo. Exécutez ensuite Wireshark en tant qu'utilisateur non root.

Panthère
la source
Oui, je lance ça avec sudo.
Mohammad Reza Rezwani
J'ai écrit ceci: sudo "setcap 'CAP_NET_RAW + eip CAP_NET_ADMIN + eip' / usr / bin / dumpcap" et j'ai obtenu ceci: sudo: setcap 'CAP_NET_RAW + eip CAP_NET_ADMIN + eip' / usr / bin / dumpcap: commande non trouvée
Mohammad Reza Rezwani
1
essayersudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/dumpcap
Panther
Il y a de la documentation dans le dossier: / usr / share / doc / cableshark-common / dans un fichier readme. Il passe en revue certaines autres options non root et les dépendances pour d'autres tâches que vous souhaiterez peut-être effectuer.
j0h
2

J'ai trouvé une solution simple pour cela.

  1. Allez à usr/share/wireshark.
  2. Ouvrez init.luaavec un éditeur de texte.
  3. Remplacez disable_lua = falsepar disable_lua = true.
zack
la source
1

C'est parce que vous n'avez pas ajouté d'utilisateur au groupe Wireshark, donc:

sudo dpkg-reconfigure wireshark-common

Dites OUI à la boîte de message. Cela ajoute un groupe Wireshark. Ajoutez ensuite l'utilisateur au groupe en tapant

sudo adduser $USER wireshark

Redémarrez ensuite votre machine et ouvrez Wirehark.

Courir

wireshark

et ça marche bonne chance;)

par @Thusitha Sumanadasa

Mhirsi Hamza
la source
0

J'utilise Mint (basé sur Ubuntu), dans mon cas, c'est l'emplacement du fichier de sortie qui a causé le problème, lorsque je change le fichier de sortie en dessous /tmp/, le problème est résolu.

par exemple

  • tshark -i wlp7s0 -w /tmp/a.pcap
Eric Wang
la source