Benutzer und Gruppen erklärt

LinuxBeginner
Jetzt üben

Einführung

In diesem Lab lernen Sie herauszufinden, „wer“ sich auf Ihrem Linux-System befindet.

Stellen Sie sich einen Wohnkomplex vor:

  • Benutzer: Mieterinnen und Mieter.
  • Gruppen: Zugriffslisten (Gruppe für den Fitnessraum, Gruppe für den Pool).

Das System führt ein „Hauptverzeichnis“ aller Personen. In diesem Lab öffnen Sie dieses Verzeichnis.

Linux hat das leistungsfähige Mehrbenutzerkonzept von Unix übernommen. Auch wenn Sie die einzige sichtbare Person sind, die ein kleines Laborsystem verwendet, arbeitet das Betriebssystem weiterhin mit Konten, Gruppen, Besitz und kontrolliertem Zugriff.

Benutzerliste anzeigen (/etc/passwd)

Das „Hauptverzeichnis“ der Benutzer befindet sich in /etc/passwd.

Stellen Sie sich diese Datei wie eine Tabelle vor. Die Spalten sind durch Doppelpunkte : getrennt.

Historisch war /etc/passwd tatsächlich eine der zentralen Kontodatenbanken auf Unix-ähnlichen Systemen. Moderne Systeme verwalten Passwörter sicherer als frühere Systeme. Die Struktur der Kontoeinträge ist jedoch weiterhin ein grundlegender Bestandteil der Identitätsverwaltung unter Linux.

Zeigen Sie die Datei an:

cat /etc/passwd

Beispielausgabe:

root:x:0:0:root:/root:/bin/bash
labex:x:5000:5000::/home/labex:/usr/bin/zsh
...

Sehen wir uns labex:x:5000:5000::/home/labex:/usr/bin/zsh im Detail an:

  1. Benutzername: labex
  2. Passwort: x (an anderer Stelle gespeichert)
  3. Benutzer-ID (UID): 5000
  4. Gruppen-ID (GID): 5000
  5. Informationen: (leer)
  6. Home-Verzeichnis: /home/labex
  7. Shell: /usr/bin/zsh

Diese Felder stehen direkt mit späteren Themen des Kurses in Verbindung: Identität, Zugehörigkeit zur primären Gruppe, Home-Verzeichnisse und die Shell, die nach der Anmeldung gestartet wird.

Root-Benutzer identifizieren (UID 0)

Der Benutzer root ist der Hausverwalter des Gebäudes. Er hat Schlüssel zu allem.

Suchen Sie den Eintrag für root:

grep "^root" /etc/passwd

Ausgabe:

root:x:0:0:root:/root:/bin/bash

Die UID im dritten Feld ist 0. Unter Linux bedeutet UID 0 uneingeschränkte Berechtigungen.

Deshalb werden Linux-Berechtigungen sowohl anhand numerischer Identitäten als auch anhand von Namen beschrieben. Namen sind für Menschen praktisch, intern achtet das System jedoch sehr genau auf die IDs.

Ihren Benutzer identifizieren

Suchen Sie Ihren eigenen Eintrag (labex):

grep "^labex" /etc/passwd

Ausgabe:

labex:x:5000:5000::/home/labex:/usr/bin/zsh

Ihre UID ist 5000.

Ihr Home-Verzeichnis ist /home/labex.

Gruppen überprüfen (id)

/etc/passwd führt nur Ihre primäre Gruppe auf. Verwenden Sie id, um alle Ihre „Zugriffskarten“ anzuzeigen.

id

Ausgabe:

uid=5000(labex) gid=5000(labex) groups=5000(labex),27(sudo)...

Das ist Ihr Ausweis:

  • uid: Aktueller Benutzer.
  • gid: Primäre Gruppe.
  • groups: Alle Gruppenzugehörigkeiten.

Sie gehören zur Gruppe sudo (ID 27). Dadurch können Sie als root handeln!

Die Gruppenmitgliedschaft ist eine der wichtigsten Möglichkeiten, mit denen Linux gemeinsamen Zugriff verwaltet. Statt Berechtigungen für alles einzeln an Benutzer zu vergeben, kann das System Benutzer Gruppen zuweisen und anschließend Regeln auf diese Gruppen anwenden.

Zusammenfassung

In diesem Lab haben Sie die „Wer ist wer?“-Struktur Ihres Linux-Systems untersucht. Sie haben gelernt:

  • Benutzer sind in der Datei /etc/passwd definiert.
  • UID 0 gehört zu root, dem Systemadministrator (dem Hausverwalter).
  • UID 5000 ist in diesem System Ihrem Benutzerkonto zugewiesen.
  • Gruppen steuern den Zugriff auf gemeinsam verwendete Ressourcen.
  • Der Befehl id zeigt Ihre vollständige Identität einschließlich der Gruppen an, deren „Schlüssel“ Sie besitzen.

Das Verständnis dieser Identitäten ist entscheidend, weil jede Berechtigung unter Linux – also wer eine Datei lesen oder ein Programm ausführen darf – auf diesen IDs basiert.