Table of Contents

Benutzerverwaltung unter Linux

tl;dr

# Erstellen von Gruppen
sudo groupadd developers
 
# Erstellen von Benutzern und Zuweisen zu Gruppen
sudo useradd -m -s /bin/bash User
 
# Den User `User` der Nebengruppe `developers` hinzufügen
sudo usermod -aG developers User
 
# Setzen des Passworts 
sudo passwd User
 
# Überblick verschaffen über Nutzer und Gruppen
getent passwd # Einträge der Datei passwd (User)
getent group # Einträge der Datei group (Gruppen)
 
# User wieder löschen
sudo userdel -r User

Benutzer

Gruppen

Benutzerverwaltung:

Ressourcenzugriff:

Zusammenarbeit:

Sicherheit:

Gruppen anlegen/ ändern/ löschen

Befehl Aktion
sudo groupadd gruppe Fügt Gruppe hinzu
sudo groupmod -n neuername gruppe Ändert Namen einer Gruppe
sudo groupdel gruppe Löscht eine Gruppe

Benutzerkonten

Benutzer anlegen

sudo useradd -m -s /bin/bash benutzername

Option Aktion
-m sorgt dafür, dass ein Home-Verzeichnis für den neuen Benutzer erstellt wird
-s Nutzer nutzt bash als Konsole
-G fügt den neu erstellten Nutzer direkt der Nebengruppe GRUPPE hinzu

Passwort setzen

Nach dem Anlegen eines Benutzers muss ein Passwort gesetzt werden:

sudo passwd benutzername

Benutzer modifizieren

sudo usermod -g gruppe benutzername

Befehl Aktion
-g gruppe benutzername ändert die Hauptgruppe des Users
-aG gruppe benutzername fügt den Benutzer einer Nebengruppe hinzu, ohne ihn aus anderen Gruppen zu entfernen
-G gruppe benutzername ändert die Nebengruppe des Users
-l neuername benutzername kann der Name eines Benutzers geändert werden

Benutzer aus Gruppen entfernen mit gpasswd

Der Befehl gpasswd wird sowohl für das Hinzufügen als auch das Entfernen von Usern zu Gruppen verwendet.

Hinzufügen

gpasswd -a -a für “add”

sudo gpasswd -a benutzername gruppenname
Entfernen

gpasswd -d -d für “delete”

sudo gpasswd -d benutzername gruppenname

Benutzer und Gruppen anzeigen

Befehl Rückgabe
getent passwd user:password:uid:gid:user name or comment field:home directory:shell
getent group group:password:gid:users

/etc/passwd

Die Einträge in der Datei /etc/passwd sind für die Verwaltung von Benutzerkonten auf einem Linux-System wichtig. Jeder Eintrag enthält Informationen zu einem einzelnen Benutzer und ist durch Doppelpunkte (:) getrennt. Ein typischer Eintrag sieht so aus:

 > getent passwd
 benutzername:passwort:benutzer_id:gruppen_id:gefullname:home_verzeichnis:shell
Hier ist eine detaillierte Erklärung der einzelnen Felder:

  1. benutzername: Der Name des Benutzers (z. B. “root”, “john”).
  2. passwort: Ein verschlüsseltes Passwort (historisch gesehen war hier das Passwort gespeichert, aber aus Sicherheitsgründen wird heutzutage oft ein “x” oder “*” angezeigt, und die Passwörter werden in der Datei /etc/shadow gespeichert).
  3. benutzer_id (UID): Eine eindeutige numerische ID für den Benutzer.
  4. gruppen_id (GID): Die ID der primären Gruppe des Benutzers.
  5. gefullname: Ein optionales Feld für den vollständigen Namen des Benutzers oder eine Beschreibung (manchmal bleibt es leer).
  6. home_verzeichnis: Das Verzeichnis, in dem der Benutzer seine Dateien speichert (z. B. /home/john).
  7. shell: Die Standard-Shell, die beim Einloggen verwendet wird (z. B. /bin/bash oder /bin/sh).

Ein Beispiel eines Eintrags:

john:x:1001:1001:John Doe:/home/john:/bin/bash

In diesem Beispiel bedeutet:

Benutzer löschen

Befehl Aktion
sudo userdel benutzername Löscht den User
sudo userdel -r benutzername Home-Verzeichnis wird gelöscht