Page 1 of 1

ge-sudo-ete Prozesse beenden

Posted: 2008-08-25 18:31
by suntzu
Hi zusammen,

ich starte mit

Code: Select all

sudo /usr/sbin/tcpdump -optionen &
tcpdump, habe auch nur die Berechtigung, tcpdump mit sudo zu starten. Jetzt ist das Problem, dass ich das tcpdump nicht mehr (als normaler Nutzer) beenden kann. Irgendwie logisch, ist ja ein root-Programm. Welche Möglichkeit habe ich als normaler Nutzer jetzt, den tcpdump-Prozess wieder zu beenden?

Danke schonmal,
Dominik

Re: ge-sudo-ete Prozesse beenden

Posted: 2008-08-25 18:54
by EdRoxter

Code: Select all

sudo killall tcpdump
ohne es getestet zu haben.

Re: ge-sudo-ete Prozesse beenden

Posted: 2008-08-25 18:56
by suntzu
EdRoxter wrote:

Code: Select all

sudo killall tcpdump
ohne es getestet zu haben.
Leider nicht, schon getestet :-) Logischerweise habe ich keinen Zugriff auf killall mHv sudo ... Könnte böse enden *gg*

Re: ge-sudo-ete Prozesse beenden

Posted: 2008-08-25 19:40
by freddy36
man tcpdump wrote: -Z Drops privileges (if root) and changes user ID to user and the group ID to the primary group of user.
Das dürfte in deinem Fall die leichteste Lösung sein.

Eventuell möchtest du dich (bzw. wer auch immer die Kiste administriert) über POSIX Capabilities informieren, dann läuft tcpdump auch ohne sudo :)

Re: ge-sudo-ete Prozesse beenden

Posted: 2008-08-25 19:41
by EdRoxter
Stimmt. If you type "google" into Google...

Code: Select all

PID=`ps aux | grep -m 1 "sudo tcpdump" | awk '{print $2}'`;sudo kill -9 $PID;
Geht sicherlich eleganter, aber dafür bin ich gerade zu faul.

Edith meint:
-Z Drops privileges (if root) and changes user ID to user and the group ID to the primary group of user.
.. oder so.

Re: ge-sudo-ete Prozesse beenden

Posted: 2008-08-25 19:43
by suntzu
EdRoxter wrote:Stimmt. If you type "google" into Google...

Code: Select all

PID=`ps a | grep -m 1 "sudo tcpdump" | awk '{print $2}'`;sudo kill -9 $PID;
Geht sicherlich eleganter, aber dafür bin ich gerade zu faul.
Das geht leider auch nicht. Mit kill und Konsorten komme ich nicht weiter, da kriege ich halt immer den Fehler, dass keine Berechtigung vorhanden ist.

Re: ge-sudo-ete Prozesse beenden

Posted: 2008-08-25 19:46
by freddy36
SunTzu wrote:Das geht leider auch nicht. Mit kill und Konsorten komme ich nicht weiter, da kriege ich halt immer den Fehler, dass keine Berechtigung vorhanden ist.
Wenn du per sudo nur tcpdump starten darfst und kein Zugriff auf kill, etc. hast kannst du den Prozess nicht mehr selber killen :)

Re: ge-sudo-ete Prozesse beenden

Posted: 2008-08-25 19:48
by EdRoxter
Deshalb ja

Code: Select all

sudo kill
Ich hab mich aber vertan.

Code: Select all

PID=`ps aux | grep -m 1 "tcpdump" | awk '{print $2}'`;sudo kill -9 $PID;
wäre richtiger.

Re: ge-sudo-ete Prozesse beenden

Posted: 2008-08-25 19:49
by suntzu
Freddy36 wrote:
man tcpdump wrote: -Z Drops privileges (if root) and changes user ID to user and the group ID to the primary group of user.
Das dürfte in deinem Fall die leichteste Lösung sein.

Eventuell möchtest du dich (bzw. wer auch immer die Kiste administriert) über POSIX Capabilities informieren, dann läuft tcpdump auch ohne sudo :)
OK, das hört sich gut an und ein erster, kurzer Test hat die Funktionalität auch bestätigt. Jetzt muss ich erstmal den jetzigen Durchlauf meines Scripts abwarten, danach werde ich das mal "im echten Leben" (tm) ausprobieren.

Und was die POSIX-Sachen angeht: Ich werde nicht den Lehrstuhl-Admin bitten, das Suse so zu modifizieren, dass es POSIX-"konformer" ist *gg*. Never change a running system und so ...

Re: ge-sudo-ete Prozesse beenden

Posted: 2008-08-25 20:57
by oxygen
SunTzu wrote: Und was die POSIX-Sachen angeht: Ich werde nicht den Lehrstuhl-Admin bitten, das Suse so zu modifizieren, dass es POSIX-"konformer" ist *gg*. Never change a running system und so ...
Fragen kostet nichts. Aber ich glaub auch nicht, dass dir der Rainer da weiterhelfen kann.

Re: ge-sudo-ete Prozesse beenden

Posted: 2008-08-26 00:31
by suntzu
oxygen wrote: Fragen kostet nichts. Aber ich glaub auch nicht, dass dir der Rainer da weiterhelfen kann.
Haben eh die Hiwis gemacht. Aber das mit dem -Z für tcpdump war der entscheidende Hinweis, dann funktioniert ein kill als unpriviligierter User hervorragend.

also, ab sofort ist der Rechner im Studiraum hinten links blockiert ;-)

Re: ge-sudo-ete Prozesse beenden

Posted: 2008-08-26 09:08
by Joe User
EdRoxter wrote:

Code: Select all

PID=`ps aux | grep -m 1 "tcpdump" | awk '{print $2}'`;sudo kill -9 $PID;
wäre richtiger.
man pkill

Re: ge-sudo-ete Prozesse beenden

Posted: 2008-08-26 15:05
by EdRoxter
Da war was... ;)

Aber da sich das ja dank privilege dropping eh schon erledigt hat, ist das ja auch egal. :)