In jedem Multi-User-Betriebssystem ist die Verwaltung von Benutzern und Gruppen ein fundamentales Konzept. Dies ist ein Kernbestandteil der Grundlagen von Linux und dient der Zugriffskontrolle und Berechtigungsverwaltung. Wenn ein Prozess ausgeführt wird, läuft er unter dem Benutzer, der ihn gestartet hat. Ebenso hängen Dateizugriff und Eigentümerschaft von Berechtigungen ab, was verhindert, dass ein Benutzer auf die privaten Dokumente eines anderen zugreift.
Die Grundlagen von Linux-Benutzern und -Gruppen
Jeder Benutzer auf einem Linux-System erhält ein persönliches Home-Verzeichnis, das sich typischerweise unter /home/benutzername befindet. Dieses Verzeichnis speichert die benutzerspezifischen Dateien und Konfigurationen, obwohl der genaue Pfad zwischen verschiedenen Linux-Distributionen variieren kann.
Das System identifiziert Benutzer anhand einer Benutzer-ID (UID) und Gruppen anhand einer Gruppen-ID (GID). Während wir für Menschen lesbare Benutzernamen verwenden, verlässt sich das Betriebssystem bei allen berechtigungsbezogenen Aufgaben auf diese eindeutigen numerischen IDs. Gruppen sind im Grunde Sammlungen von Benutzern, was die Verwaltung von Berechtigungen für mehrere Konten gleichzeitig vereinfacht.
Der Superuser und der Sudo-Befehl
Innerhalb der Hierarchie der Linux-Benutzer und -Gruppen steht ein Benutzer über allen anderen: root, auch bekannt als der Superuser. Der root-Benutzer verfügt über unbegrenzte Macht und kann auf jede Datei zugreifen und jeden Prozess verwalten. Die kontinuierliche Arbeit als root ist riskant, da ein einfacher Fehler das System beschädigen könnte.
Um dieses Risiko zu mindern, können autorisierte Benutzer Befehle mit Root-Rechten mithilfe des Befehls sudo (superuser do) ausführen. Dies ermöglicht administrative Aufgaben, ohne sich als root-Benutzer anmelden zu müssen. Das Verständnis, wie man sudo korrekt verwendet, ist unerlässlich für jeden, der die schnellste Methode für fortgeschrittene Linux-Kenntnisse anstrebt.
Versuchen wir, eine geschützte Datei wie /etc/shadow anzuzeigen, die die verschlüsselten Benutzerpasswörter speichert.
cat /etc/shadow
Sie erhalten eine Fehlermeldung „Permission denied“ (Zugriff verweigert). Untersuchen wir nun die Berechtigungen der Datei:
$ ls -la /etc/shadow
-rw-r----- 1 root shadow 1134 Dec 1 11:45 /etc/shadow
Obwohl wir Berechtigungen später im Detail behandeln werden, zeigt diese Ausgabe, dass nur der root-Benutzer und Mitglieder der Gruppe shadow diese Datei lesen dürfen. Führen Sie den Befehl nun erneut mit sudo aus:
sudo cat /etc/shadow
Dieses Mal werden Sie zur Eingabe Ihres Passworts aufgefordert, und nach erfolgreicher Authentifizierung wird der Inhalt der Datei angezeigt.