sudo ([ˈsuːduː], Akronym für su “do”) ist ein Befehl unter Unix und unixartigen Betriebssystemen wie Linux oder macOS, der dazu benutzt wird, Prozesse mit den Rechten eines anderen Benutzers (z. B. des Superusers root) zu starten. Im Gegensatz zu dem nicht zu sudo gehörenden su ist einstellbar, welche Befehle ausgeführt werden dürfen. Der dauerhafte Wechsel der Identität ist ebenfalls möglich durch sudo -s und sudo -i.

Wikimedia Foundation Inc.

Lernziele

  • Neuen Benutzer erstellen
  • Benutzer der sudo-Gruppe hinzufügen
  • Anwendungsbeispiel

Vorgehen

Nutzung des Root-Benutzers nicht mehr empfehlenswert! Vong 1 Sicherheit her sollte der Benutzer root nicht genutzt werden. Um trotzdem Aktionen mit root-Rechten ausführen zu können lege ich einen neuen Benutzer an und füge ihn der sudo-Gruppe hinzu.

Voraussetzung

Zugriff auf meinen Server mit dem Benutzer root und die Anwendung sudo ist bereits installiert sein (apt install sudo).

Benutzer hinzufügen

adduser --home /home/neuerbenutzer --shell /bin/bash neuerbenutzer
  • adduser: Befehl um den neuen Nutzer anzulegen.
  • --home: Das Homeverzeichnis wird im angegebenen Pfad angelegt anstatt im Verzeichnis, welches in der Konfigurationsdatei hinterlegt ist. Zumeist entspricht die Konfiguration dem Standard aber im Zweifel definiere ich den Pfad selbst.
  • --shell: Es wird nicht die in der Konfigurationsdatei hinterlegte Shell als Login-Shell angelegt, sondern die in der Option angegebene. Auch hier lege ich im Zweifel die Option selbst fest.
Ein geöffnetes Terminal-Fenster in dem der Befehl aus dem Artikel eingegeben wurde und die Punkte abgearbeitet wurden.

Benutzer der sudo-Gruppe hinzufügen

usermod -aG sudo neuerbenutzer 
  • usermod: Befehl um einen Benutzer zu modifizieren
  • -a: Benutzer zur Gruppen hinzufügen, die mit der Option -G angegeben werden, ohne ihn dabei aus anderen Gruppen zu entfernen.
  • -G: Liste (kommasepariert) von zusätzlichen Gruppen, denen der Benutzer neben der Initial-Gruppe zugeordnet werden soll.
Ein geöffnetes Terminal-Fenster in dem der usermod-Befehl mit Optionen eingegeben wurde.

Anwendungsbeispiel

Um den Benutzer zu testen kann ich mich nun mit dem Befehl su neuerbenutzer einloggen. Alternativ kann ich auch via logout mich ausloggen und eine neue Verbindung mit meinem neuen Benutzer herstellen. Teste ich nun den Befehl aus diesem Artikel (adduser oder usermod) funktioniert dieser nicht, weil die root-Rechte fehlen.

Ein geöffnetes Terminal-Fenster in dem der adduser-Befehl ohne Optionen eingegeben wurde und ein Fehler wegen fehlender Rechte zurückgegeben wird.

Gebe ich selbigem Befehl nun ein sudo mit wird der Befehl (sudo adduser) nach erneuter Authentifizierung mit root-Rechten ausgeführt.

Ein geöffnetes Terminal-Fenster in dem der adduser-Befehl ohne Optionen mit sudo eingegeben wurde und kein Fehler wegen fehlender Rechte zurückgegeben wird.

Quellen