Sudo und Superuser (Debian): Unterschied zwischen den Versionen

Aus MattWiki
Zeile 9: Zeile 9:
  [[Category:Debian]]
  [[Category:Debian]]
[[Kategorie:Terminal]]
[[Kategorie:Terminal]]
Konfiguration in Datei <code>/etc/sudoers</code> bearbeiten.


Die Datei darf nur mit '''visudo''' bearbeitet werden. '''Alternativ:''' Konfigurationsdateien in '''/etc/sudoers.d''' erstellen.
'''visudo''' starten. Damit wird die Konfiguration in <code>/etc/sudoers</code> bearbeitet.
 
'''Alternativ:''' Neue Konfigurationsdateien in '''/etc/sudoers.d''' erstellen.


'''Beispiele:'''
'''Beispiele:'''


  root           ALL = (ALL) ALL
  root           ALL = (ALL) ALL


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


   %administrator         ALL = (ALL) ALL
  %administrator  ALL = (ALL) ALL


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


   admin      ALL = NOPASSWD: ALL
  admin           ALL = NOPASSWD: ALL
   %users     ALL = NOPASSWD: /usr/sbin/IRGENDEINSKRIPT
  %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.
Der Benutzer '''admin''' darf ''ohne Passwortabfrage'' alle Programme ausführen. Die Gruppe '''users''' darf ''ohne Passwortabfrage'' den Befehl '''/usr/sbin/IRGENDEINSKRIPT''' ausführen.

Version vom 3. Dezember 2016, 00:26 Uhr

Nutzung

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

Einrichtung Sudo

visudo starten. Damit wird die Konfiguration in /etc/sudoers bearbeitet.

Alternativ: Neue 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.