Ich benutze Ubuntu 13.04.
Wireshark zeigt mir keine Protokolle an und funktioniert überhaupt nicht. Ich bin mit meinem WLAN-Router von Belkin verbunden.
Ich benutze Ubuntu 13.04.
Wireshark zeigt mir keine Protokolle an und funktioniert überhaupt nicht. Ich bin mit meinem WLAN-Router von Belkin verbunden.
Antworten:
Öffnen Sie ein Terminal durch Drücken von Ctrl+ Alt+ Tund geben Sie die folgenden Befehle ein:
sudo dpkg-reconfigure wireshark-common
Drücken Sie den Rechtspfeil und geben Sie für Ja ein
sudo chmod +x /usr/bin/dumpcap
Sie sollten jetzt in der Lage sein, es ohne root auszuführen, und Sie können erfassen.
chmod +x
macht dumpcap für alle ausführbar. Eine Alternative wäre das Hinzufügen von Benutzern, denen Sie die Erfassung in einer Wireshark-Gruppe erlauben möchten.
Die Meldung "In diesem System kann mit der aktuellen Konfiguration keine Schnittstelle für die Erfassung verwendet werden" wird normalerweise angezeigt, wenn Sie nicht über die Berechtigungen zum Zugriff auf die Netzwerkschnittstellen für die Überwachung verfügen. Versuchen Sie, ein Terminal zu öffnen und gksudo wireshark auszuführen. Wenn mehrere Netzwerkschnittstellen angezeigt werden, ist dies darauf zurückzuführen, dass Sie beim Ausführen von wireshark ohne Root-Berechtigungen nicht über die erforderlichen Überwachungsrechte verfügen.
Führen Sie den folgenden Befehl in einem Terminal aus, um das zu beheben:
sudo setcap CAP_NET_RAW,CAP_NET_ADMIN,CAP_DAC_OVERRIDE+eip /usr/bin/dumpcap
sudo setcap
stattdessen den Befehl aus - oder lassen Sie sudo dpkg-reconfigure wireshark-common
das Paket die Funktionen für Sie festlegen.
Als ich versucht habe, wireshark zu starten, habe ich folgende Fehlermeldung erhalten:
Couldn't run /usr/bin/dumpcap in child process: Permission denied
Also habe ich es als root ausgeführt, wodurch LUA deaktiviert wurde. Das Popup-Fenster, das mich darüber informierte, dass die LUA deaktiviert wurde, war so ärgerlich, dass ich versuchte, es zu beheben.
Zuerst habe ich die Berechtigungen durch Ausführen überprüft
ls -l /usr/bin/dumpcap
Was dazu geführt hat :
-rwxr-xr-- 1 root wireshark 96464 Jan 24 10:31 /usr/bin/dumpcap
das war offensichtlich, das hat Wireshark mir erzählt. Also habe ich den Besitzer von root auf acc geändert
sudo chown -R $LOGNAME /usr/bin/dumpcap
Was geklappt hat, ich kann jetzt wireshark ohne root ausführen
Googled "Konnte / usr / bin / dumpcap im Child-Prozess nicht ausführen" und fand diese Frage:
Was als Duplikat markiert ist und mich hierher gebracht hat. Die vorgeschlagene Lösung lautet:
sudo chmod +x /usr/bin/dumpcap
Der obige Befehl funktioniert wirklich, aber ich möchte eine Sicherheit hinzufügen WARNUNG . Dies ermöglicht die Paketerfassung für ALLE BENUTZER auf dem System. Dies kann eine vorübergehende Lösung sein, ist jedoch als dauerhafte Lösung nicht erwünscht.
Ich befolgte die Anweisungen auf der wireshark-Seite zu den Erfassungsberechtigungen:
https://wiki.wireshark.org/CaptureSetup/CapturePrivileges
Sie EMPFEHLUNGEN dumpcap Ausführung zu einer bestimmten Gruppe oder eines Benutzers beschränken.
Ich habe diese Anweisungen befolgt (mit Anpassungen):
Festlegen von Netzwerkberechtigungen für dumpcap, wenn Ihr Kernel und Ihr Dateisystem Dateifunktionen unterstützen
Stellen Sie sicher, dass Sie die erforderlichen Tools installiert haben, z. B. den Befehl setcap.
sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/dumpcap
(HINWEIS: Ersetzen Sie / usr / bin durch / usr / sbin, falls Sie eine Fehlermeldung erhalten, die darauf hinweist, dass sich dumpcap nicht in / usr / bin befindet.)
Festlegen von Netzwerkberechtigungen für dumpcap, wenn Ihr Kernel und Ihr Dateisystem keine Dateifunktionen unterstützen
In diesem Fall müssen Sie dumpcap set-UID auf root setzen.
sudo chown root /usr/bin/dumpcap
(HINWEIS: Ersetzen Sie / usr / bin durch / usr / sbin in diesem Befehl und den nächsten Befehl, falls Sie eine Fehlermeldung erhalten, die darauf hinweist, dass dumpcap nicht in / usr / sbin enthalten ist.)
sudo chmod u+s /usr/bin/dumpcap
Beschränken der Erfassungsberechtigung auf nur eine Gruppe
Nachdem Sie die Netzwerkprivilegien von dumpcap festgelegt haben:
Erstellen Sie den Benutzer "wireshark" in der Gruppe "wireshark".
sudo chgrp wireshark /usr/sbin/dumpcap
sudo chmod o-rx /usr/sbin/dumpcap
Stellen Sie sicher, dass Wireshark nur von root und von einem Benutzer in der Gruppe "wireshark" aus funktioniert ( ICH HABE DIESEN SCHRITT NUR IM ENDE GEMACHT - NOCH NICHT VERGESSEN )
Und zum Schluss noch zwei Schritte:
sudo dpkg-reconfigure wireshark-common
Wählen Sie "Ja".
Melden Sie ALLE Benutzeroberflächen für den Benutzer ab (einschließlich ssh, was mein größter Fehler war) und melden Sie sich erneut an.
Hoffentlich sollten Sie wireshark starten und als normaler Benutzer alle Oberflächen sehen (ohne sudo)
wireshark &
Und wenn Sie die Dateiberechtigungen überprüfen
ls -la /usr/bin/dumpcap
Es darf NUR der BENUTZER und die GRUPPE ausführen
-rwxr-xr-- 1 Wurzeldrahthai
gksudo wireshark
.