sudo
Der Shell-Befehl sudo (substitute user, do) führt einen anderen Shell-Befehl mit den Rechten eines anderen Benutzers (z. B. "root") aus. Dabei kann auch festgelegt werden, welche Befehle überhaupt ausgeführt werden dürfen.
Konfiguration
Die Konfiguration von sudo erfolgt mit visudo (nicht mit vi!) in der Datei "/etc/sudoers". In dieser Datei werden alle Benutzer aufgelistet, die sudo verwenden dürfen.
mik ALL=(ALL) # Benutzer "mik" darf mit sudo alles mik ALL=(ALL) NOPASSWD: ALL # Benutzer "mik" darf mit sudo alles ohne Abfrage des Passworts
Manche Linux-Distributionen (z. B. Knoppix, Ubuntu) verwenden sudo, um den Standardbenutzer praktisch zum root-Benutzer zu machen, indem sie in der Konfigurationsdatei "/etc/sudoers" einen Eintrag der Form "<Benutzername> ALL = (root)" anlegen. In diesem Fall darf jeder Benutzer beliebige Befehle als Benutzer "root" absetzen, indem er dem gewünschten Befehl das Wort "sudo" voranstellt, also z. B. "sudo killall -9 <Befehl>", um alle Prozesse namens "Befehl" abzuschiessen. Dabei fordert sudo zur Sicherheit nur das eigene Passwort des aufrufenden Benutzers an; anschliessend wird der darauf folgende Befehl mit root-Rechten ausgeführt.
Benutzer "xyz" darf den Befehl "tail -f /var/log/messages" ausführen, wobei der Befehl exakt wie angegeben auf der Befehlszeile eingegeben werden muss.
xyz ALL = (root) tail -f /var/log/messages
Verwendung
Änderungen in der Konfigurationsdatei "/etc/sudoers".
# /usr/sbin/visudo -f sudoers
...
$ sudo newaliases
Ausführen von "Befehl1" und "Befehl2" in einer Subshell.
$ sudo (Befehl1; Befehl2)
Anzeige der Befehle, die der aufrufende unpriviligierte Benutzer mit sudo aufrufen darf.
$ sudo -l
Weblinks
Herausgeber | Sprache | Webseitentitel | Anmerkungen |
---|---|---|---|
Todd C. Miller | eng | Sudo main pagewbm |
|
Linux User | ger | Neue Identität : zu Befehl: su, sudowbm |