AB 15 — Gruppenverwaltung
Gruppen in Linux
Linux ist ein echtes Mehrbenutzer-Betriebssystem, und um Sicherheit sowie Ordnung zu gewährleisten, basiert es auf einem flexiblen Rechtesystem. Neben Benutzern spielen dabei Gruppen eine zentrale Rolle.
- Was ist eine Gruppe in Linux?
Eine Gruppe ist eine Sammlung von Benutzern, denen gemeinsame Rechte und Berechtigungen zugewiesen werden können.
Statt jedem Benutzer einzeln Rechte zu geben, ordnet man Benutzer einer Gruppe zu. Beispiel:
Alle Benutzer der Gruppe students können auf /home/shared zugreifen
Die Gruppe developers darf Programme kompilieren
Die Gruppe www-data wird vom Webserver genutzt
Gruppen vereinfachen die Verwaltung und steigern die Sicherheit.
- Warum sind Gruppen wichtig?
Gruppen ermöglichen:
Zugriffskontrolle (Lesen/Schreiben/Ausführen)
Organisierte Benutzerverwaltung (z. B. Mitarbeiter → Abteilungen)
Ressourcenteilung (z. B. gemeinsame Projekte)
Sicherheit im Mehrbenutzerbetrieb
Cluster- und Server-Administration (Dienste mit eingeschränkten Gruppen)
- Arten von Gruppen
Linux kennt zwei Hauptarten von Gruppen:
a) Primäre Gruppe
Jeder Benutzer besitzt eine Hauptgruppe.
Diese steht im Feld „GID“ in /etc/passwd.
Standard: die Gruppe hat den gleichen Namen wie der Benutzer.
Beispiel aus /etc/passwd:
| student:x:1001:1001::/home/student:/bin/bash |
|---|
→ Primäre Gruppe: GID 1001 → Gruppe student
b) Sekundäre Gruppen
Ein Benutzer kann in beliebig vielen weiteren Gruppen Mitglied sein.
Diese bestimmen zusätzliche Rechte.
Abfrage:
| groups username |
|---|
Alle Gruppen stehen in der Datei:
| /etc/group |
|---|
Ein Gruppen-Eintrag sieht so aus:
| developers:x:1500:alice,bob,tom |
|---|
Bedeutung der Felder:
| Feld | Beispiel | Erklärung |
|---|---|---|
| Gruppenname | developers | Name der Gruppe |
| Passwortfeld | x | ungenutzt (Schatten-Datei) |
| GID | 1500 | eindeutige Gruppen-ID |
| Mitgliederliste | alice,bob,tom | Benutzer, die in der Gruppe sind |
Übung 1: Benutzer zur Gruppe hinzufügen (usermod)
Füge den Benutzer „student1“ der Gruppe „admins“ hinzu, ohne ihn aus vorhandenen Gruppen zu entfernen.
-
Erstelle den Benutzer student1.
-
Erstelle die Gruppe admins.
sudo groupadd adminsFüge den Benutzer student1 der Gruppe admins hinzu:
sudo usermod -aG admins student1Lass dir die Gruppe groups anzeigen:
| groups student1 |
|---|
Übung 2: Login-Shell eines Benutzers ändern (usermod)
Setze die Login-Shell von student1 auf /usr/sbin/nologin.
Ändere die Shell folgendermassen:
sudo usermod -s /usr/sbin/nologin student1Überprüfe den Inhalt der /etc/passwd mittels dem grep Befehl, indem du nach student1 nachsuchst:
| grep student1 /etc/passwd |
|---|
Übung 3: Passwort eines Benutzers ändern (passwd)
Setze ein neues Passwort für den Benutzer student2.
Erstelle den Benutzer student2.
Passwort setzen:
sudo passwd student2Teste anschließend die Änderung:
| su - student2 |
|---|
Übung 3: Passwort-Gültigkeit prüfen (chage)
Überprüfe die Passwortalterung von student2.
Lass dir die Passwort-Informationen anzeigen:
sudo chage -l student2Übung 4: Passwort-Ablauf einstellen (chage)
Setze das Passwort von student2 so, dass es alle 30 Tage geändert werden muss. Siehe dir die Option „-M“ beim Befehl chage an.
Übung 5: Benutzer zwingen, das Passwort beim nächsten Login zu ändern
Der Benutzer student2 soll beim ersten Einloggen sein Passwort ändern müssen.
sudo chage -d 0 student2Übung 6: Benutzer sperren und entsperren
Sperre den Benutzer student2 und entsperre ihn anschließend wieder.
Sperre den Benutzer student2:
sudo usermod -L student2Überprüfe den Status:
sudo passwd -S student2Entsperre den Benutzer student2:
sudo usermod -U student2Übung 7: Gruppen überprüfen
Überprüfe, ob die Gruppe admins existiert und liste alle Benutzer auf, die zu dieser Gruppe gehören mit dem Befehl getent:
| getent group admins |
|---|
- Entferne alle Benutzer aus der Gruppe admins.
sudo gpasswd -d students1 admins- Lösche anschließend die Gruppe admins.
sudo delgroup admins









