Sudo und Superuser (Debian)

Aus MattWiki

Nutzung

$ su                # Zum Root-User wechseln
$ sudo xxx          # Befehl xxx als Superuser ausführen
$ sudo bash         # Bash-Konsole als Superuser ausführen

Einrichtung Sudo

Konfiguration in Datei /etc/sudoers bearbeiten.

Die Datei darf nur mit visudo bearbeitet werden. Alternativ: Konfigurationsdateien in /etc/sudoers.d erstellen.

Beispiele:

root           ALL = (ALL) ALL

Das heißt root darf alle Befehle mit sudo ausführen.

 %administrator         ALL = (ALL) ALL

Die Gruppe administrator darf alle Befehle mittels sudo als root ausführen.

 admin      ALL = NOPASSWD: ALL
 %users     ALL = NOPASSWD: /usr/sbin/IRGENDEINSKRIPT

Der Benutzer admin darf ohne Passwortabfrage alle Programme ausführen. Die Gruppe users darf ohne Passwortabfrage den Befehl /usr/sbin/IRGENDEINSKRIPT ausführen.

Sicherheitshinweis

Man sollte die Passwortabfrage nur für Skripte oder Programme deaktivieren, die in einem Systemverzeichnis (/bin, /sbin, /usr/bin, /usr/sbin, ...) liegen und root gehören.

Grund: Ist die Passwortabfrage beispielsweise für das Skript ~/bin/mein-skript deaktiviert, dann kann es ein Angreifer mit Benutzerrechten einfach löschen und durch ein beliebiges Skript oder Programm ersetzen und dann mit Root-Rechten ausführen. Auf diese Weise wäre das gesamte System kompromittiert. Erst wenn das Skript root gehört und nur von root geändert werden kann und auch in einem Verzeichnis liegt, in dem nur root Schreibrechte hat, ist dieser Angriff nicht mehr möglich.