sudo: Unterschied zwischen den Versionen
Michi (Diskussion | Beiträge) |
Michi (Diskussion | Beiträge) |
||
Zeile 29: | Zeile 29: | ||
Ausführen von Befehl1 und Befehl2 in einer Subshell. | Ausführen von Befehl1 und Befehl2 in einer Subshell. | ||
$ <b>sudo (Befehl1; Befehl2)</b> | $ <b>sudo (<i>Befehl1</i>; <i>Befehl2</i>)</b> | ||
Anzeige der Befehle, die der aufrufende unpriviligierte Benutzer mit sudo aufrufen darf. | Anzeige der Befehle, die der aufrufende unpriviligierte Benutzer mit sudo aufrufen darf. |
Version vom 30. Januar 2009, 10:52 Uhr
Der Shell-Befehl sudo 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 Konfiguratiobsdatei "/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
- sudo (Sudo.ws)
- Neue Identität (Zu Befehl: su, sudo) (Linux-User.de)