← Zurück

Benutzer & Gruppen verwalten

linux administration users security anfänger

Benutzer & Gruppen verwalten

Jeder, der auf einem Linux-System arbeitet, ist ein Benutzer. Dieses Guide erklärt dir, wie du Benutzer anlegst, in Gruppen organisierst und verstehst, wer was darf.


Warum Benutzer und Gruppen?

Stell dir vor, du hast einen Server mit mehreren Personen: - Max soll Webseiten bearbeiten können - Anna soll nur Datenbanken verwalten - Der Webserver (nginx) braucht Zugriff auf Website-Dateien, aber nicht auf die Datenbank

Mit Benutzern und Gruppen regelst du genau das: Wer darf was.


Grundkonzepte einfach erklärt

Was ist ein Benutzer?

Ein Benutzer ist wie ein Konto auf deinem System. Jeder Benutzer hat:

Eigenschaft Beispiel Erklärung
Username max Der Name zum Einloggen
UID 1001 Eindeutige Nummer (User ID)
Home-Verzeichnis /home/max Persönlicher Ordner
Shell /bin/bash Das Programm für die Kommandozeile
Primäre Gruppe max Hauptgruppe des Benutzers

Was ist eine Gruppe?

Eine Gruppe fasst mehrere Benutzer zusammen. Wenn du einer Gruppe Zugriff auf einen Ordner gibst, haben automatisch alle Mitglieder Zugriff.

Beispiel: - Gruppe webteam hat Zugriff auf /var/www - Max und Anna sind in der Gruppe webteam - → Beide können die Webseite bearbeiten


Wichtige System-Benutzer

Diese Benutzer existieren auf jedem Linux-System:

Benutzer UID Zweck
root 0 Administrator mit allen Rechten
nobody 65534 Minimale Rechte für Dienste
www-data 33 Webserver (Debian/Ubuntu)
nginx - Webserver (bei nginx-Installation)
mysql - MySQL-Datenbank

⚠️ Wichtig: Arbeite niemals dauerhaft als root! Nutze stattdessen sudo.


Benutzer erstellen

Einfacher Benutzer

# Benutzer mit Home-Verzeichnis erstellen
sudo adduser max

Du wirst nach einem Passwort und optionalen Infos gefragt (Name, Telefon – kannst du leer lassen mit Enter).

Was passiert dabei?

  1. Benutzer max wird angelegt
  2. Gruppe max wird erstellt (primäre Gruppe)
  3. Home-Verzeichnis /home/max wird erstellt
  4. Dateien aus /etc/skel werden kopiert (.bashrc etc.)

Benutzer für einen Dienst (kein Login)

Für Services wie Webserver erstellst du Benutzer ohne Login-Möglichkeit:

sudo useradd -r -s /usr/sbin/nologin serviceuser

Was bedeuten die Optionen? - -r = System-Benutzer (niedrige UID, kein Home) - -s /usr/sbin/nologin = Kann sich nicht einloggen


Benutzer verwalten

Passwort setzen oder ändern

# Eigenes Passwort ändern
passwd

# Passwort eines anderen Benutzers (als root/sudo)
sudo passwd max

Benutzer einer Gruppe hinzufügen

# WICHTIG: Immer -a benutzen, sonst werden andere Gruppen entfernt!
sudo usermod -aG gruppenname max

Häufige Beispiele:

# Sudo-Rechte geben (Ubuntu/Debian)
sudo usermod -aG sudo max

# Docker-Nutzung erlauben
sudo usermod -aG docker max

# Zum Webteam hinzufügen
sudo usermod -aG www-data max

⚠️ Wichtig: Der Benutzer muss sich ab- und wieder anmelden, damit die neue Gruppe aktiv wird!

Informationen anzeigen

# Welche Gruppen hat ein Benutzer?
groups max

# Ausführliche Info (UID, GID, alle Gruppen)
id max

# Eigene Infos
id

Beispiel-Ausgabe:

uid=1001(max) gid=1001(max) groups=1001(max),27(sudo),33(www-data),998(docker)

Benutzer löschen

# Nur Benutzer löschen (Home bleibt)
sudo deluser max

# Benutzer MIT Home-Verzeichnis löschen
sudo deluser --remove-home max

Gruppen verwalten

Gruppe erstellen

sudo groupadd webteam

Gruppe löschen

sudo groupdel webteam

Alle Gruppen anzeigen

# Alle Gruppen
cat /etc/group

# Nur Gruppennamen
cut -d: -f1 /etc/group

# Mitglieder einer Gruppe
getent group webteam

Die wichtigen Konfigurationsdateien

/etc/passwd – Benutzer-Informationen

cat /etc/passwd

Format:

max:x:1001:1001:Max Mustermann:/home/max:/bin/bash
│   │ │    │    │              │         └─ Shell
│   │ │    │    │              └─ Home-Verzeichnis
│   │ │    │    └─ Kommentar/Name
│   │ │    └─ GID (Gruppen-ID)
│   │ └─ UID (User-ID)
│   └─ "x" = Passwort in /etc/shadow
└─ Username

/etc/group – Gruppen-Informationen

cat /etc/group

Format:

webteam:x:1002:max,anna
│       │ │    └─ Mitglieder (kommagetrennt)
│       │ └─ GID
│       └─ Passwort (meist leer)
└─ Gruppenname

/etc/shadow – Passwörter (verschlüsselt)

Diese Datei enthält die verschlüsselten Passwörter. Nur root kann sie lesen:

sudo cat /etc/shadow

Praktische Beispiele

Beispiel 1: Neuen Admin-Benutzer erstellen

# 1. Benutzer erstellen
sudo adduser admin

# 2. Sudo-Rechte geben
sudo usermod -aG sudo admin

# 3. Prüfen
groups admin
# Ausgabe: admin sudo

Beispiel 2: Web-Entwickler einrichten

# 1. Benutzer erstellen
sudo adduser webdev

# 2. Zur www-data Gruppe hinzufügen
sudo usermod -aG www-data webdev

# 3. Zugriff auf /var/www geben
sudo chown -R www-data:www-data /var/www
sudo chmod -R 775 /var/www

# Jetzt kann webdev Dateien in /var/www bearbeiten

Beispiel 3: Service-Account für eine App

# System-Benutzer ohne Login
sudo useradd -r -s /usr/sbin/nologin -d /opt/myapp myapp

# Ordner erstellen und Rechte setzen
sudo mkdir -p /opt/myapp
sudo chown myapp:myapp /opt/myapp

Root und Sudo verstehen

Was ist root?

root ist der Superuser – er darf ALLES auf dem System. Das ist mächtig, aber auch gefährlich.

Was ist sudo?

sudo = "Super User DO" – führt einen Befehl als root aus.

# Normal (als max): Keine Berechtigung
apt update
# Fehler: Permission denied

# Mit sudo: Funktioniert
sudo apt update

Wer darf sudo benutzen?

Nur Benutzer in der Gruppe sudo (Ubuntu/Debian) oder wheel (CentOS/RHEL).

# Prüfen ob du sudo darfst
groups
# Sollte "sudo" enthalten

Häufige Fehler vermeiden

Fehler 1: -a bei usermod vergessen

# FALSCH - entfernt alle anderen Gruppen!
sudo usermod -G docker max

# RICHTIG - fügt zur Gruppe hinzu
sudo usermod -aG docker max

Fehler 2: Nach Gruppenänderung nicht neu eingeloggt

Gruppenänderungen werden erst nach dem Logout/Login aktiv:

# Gruppen neu laden ohne Logout
newgrp docker

Fehler 3: Als root arbeiten

# NICHT empfohlen
sudo su -
# Jetzt bist du root - gefährlich!

# BESSER: Nur einzelne Befehle mit sudo
sudo apt update

Zusammenfassung

Aufgabe Befehl
Benutzer erstellen sudo adduser max
Passwort setzen sudo passwd max
Zur Gruppe hinzufügen sudo usermod -aG gruppe max
Gruppen anzeigen groups max oder id max
Benutzer löschen sudo deluser max
Gruppe erstellen sudo groupadd teamname
Alle Benutzer cat /etc/passwd
Alle Gruppen cat /etc/group

Nächste Schritte

Jetzt wo du Benutzer und Gruppen verstehst, lerne als nächstes:

  • Dateiberechtigungen (chmod/chown) – Welche Rechte haben Dateien?
  • SSH Hardening – Sichere Remote-Zugänge
  • Sudo Konfiguration – Wer darf was mit sudo?