su & sudo & Setuid-Bit

This blog post has been published on 2010-02-08 and may be out of date.

Um unter Linux Root-Rechte zu erhalten, kann man entweder direkt root werden (su) oder sich einige Root-Rechte beschaffen (sudo) oder man führt eine Datei aus, welche die passenden Rechte ausweist.

su: ( substitude user ) [ Benutzer austauschen ]

z.B.:

su user_1

Nur root kann direkt zu einem andern Benutzer wechseln, für alle andern gilt, dass man das entsprechende Kennwort wissen muss.

Um nun Root zu werden und auch dessen Einstellungen (Umgebungsvariablen) zu erhalten, tippst du folgenden Befehl.

su -

Das “-“-Zeichen bewirkt in diesem Fall, dass auch die Umgebungsvariablen von root gesetzt werden.

whoami

Dieser Befehl zeigt an, wer du momentan bist…

mit dem “su”-Befehl kann man auch einzelne Kommandos als root ausführen

z.B.:

su -c "less /var/log/messages"

sudo: ( substitute user, do ) [ ausgetauschter Benutzer macht ]

Noch besser/sicherer ist es mittels sudo zu arbeiten, denn hier musst du das Root-Passwort, dem entsprechendem Benutzer gar nicht mitteilen und er kann trotzdem ausgewählte Kommandos mit Root-Rechten ausführen.

sudo-Konfiguration:

vim /etc/sudoers

user_1 ALL = (ALL) ALL

der Benutzer “user_1” hat nun mittels sudo komplette Root-Rechte

z.B.:

sudo su -

user_2 ALL = /sbin/shutdown

der Benutzer “user_2” kann mit sudo nun den PC/Server heruntergefahrenen

z.B.:

sudo shutdown -h now

user_2,user_3 ALL = /sbin/shutdown

somit kann man mehreren Benutzern entsprechende Rechte zuweisen

Defaults timestamp_timeout = 0

wenn man diese Zeile in “/etc/sudoers” einträgt, muss das (eigene) Passwort bei jedem sudo-Befehl erneut eingegeben werden

wenn ein sudo-Befehl von einem Benutzer ausgeführt wird, welcher die entsprechenden Rechte nicht hat, so wird eine E-Mail generiert und der root-User darüber informiert

weitere Infos:
wiki.ubuntuusers.de/sudo/Konfiguration

chmod: [ Setuid-Bit ]

Vor einiger Zeit habe ich in folgendem Beitrag erwähnt, dass man auch mittel “chmod” andere Rechte bekommen kann. -> chmod

Hier ein entsprechendes Beispiel:

Um einer ganzen Gruppe ausführbare Root-Rechte auf ein bestimmtes Programm zu geben, könnte man auch ein “Setuid-Bit” setzten.

chown root:gruppe_1 /sbin/shutdown
chmod ug=rx,u+s /sbin/shutdown

Published by

voku

Lars Moelleken | Ich bin root, ich darf das!

%d bloggers like this: