aufgaben:multiuser_projekt
Inhaltsverzeichnis
Aufgabe: Multi-User Projekt-Setup
Diese Aufgabe simuliert ein reales Multi-User-Szenario mit überlappenden Gruppenmitgliedschaften und Dateiberechtigungen.
Aufgabenstellung
Sie sollen eine Projekt-Umgebung für ein Software-Entwicklungsteam einrichten mit folgenden Anforderungen:
Benutzer und Gruppen
Benutzer erstellen:
- user1 (UID 3001)
- user2 (UID 3002)
- user3 (UID 3003)
Gruppen erstellen:
- gruppe1 (Backend-Team)
- gruppe2 (Frontend-Team)
- gruppe3 (DevOps-Team)
Gruppenzuordnung:
- user1 → gruppe1, gruppe3
- user2 → gruppe1, gruppe2, gruppe3
- user3 → gruppe2, gruppe3
Verzeichnisstruktur unter /srv/
Erstellen Sie folgende Struktur:
/srv/ ├── projekt/ │ ├── backend/ (Gruppe: gruppe1, Rechte: 770) │ ├── frontend/ (Gruppe: gruppe2, Rechte: 770) │ ├── devops/ (Gruppe: gruppe3, Rechte: 770) │ └── shared/ (Gruppe: gruppe3, Rechte: 775, Sticky Bit)
Anforderungen an die Dateien
In /srv/projekt/backend/:
- README.md (Besitzer: user1)
- backend-config.json (Besitzer: user2)
In /srv/projekt/frontend/:
- index.html (Besitzer: user2)
- styles.css (Besitzer: user3)
In /srv/projekt/devops/:
- deploy.sh (Besitzer: user1, ausführbar)
- monitoring.conf (Besitzer: user2)
In /srv/projekt/shared/:
- Sticky Bit gesetzt
- Test-Dateien von allen Benutzern
Detaillierte Anforderungen
1. Benutzerrechte:
- user1 kann nur backend/ und devops/ ändern
- user2 kann alle Ordner ändern
- user3 kann nur frontend/ und devops/ ändern
2. Shared-Verzeichnis:
- Alle Benutzer können Dateien erstellen
- Nur der Besitzer kann seine eigenen Dateien löschen (Sticky Bit)
3. Sicherheit:
- Nur Gruppenmitglieder haben Zugriff
- Andere haben keine Rechte
Schritt-für-Schritt Anleitung
Komplettlösung
Verifikation
Testen Sie das Setup mit folgenden Befehlen:
# Benutzer-Gruppen prüfen id user1 id user2 id user3 # Verzeichnisstruktur prüfen tree /srv/projekt/ ls -la /srv/projekt/ # Zugriffsrechte testen sudo -u user1 ls -la /srv/projekt/backend/ # Sollte funktionieren sudo -u user1 ls -la /srv/projekt/frontend/ # Sollte fehlschlagen sudo -u user2 ls -la /srv/projekt/backend/ # Sollte funktionieren sudo -u user2 ls -la /srv/projekt/frontend/ # Sollte funktionieren sudo -u user3 ls -la /srv/projekt/backend/ # Sollte fehlschlagen sudo -u user3 ls -la /srv/projekt/frontend/ # Sollte funktionieren # Sticky Bit testen sudo -u user1 touch /srv/projekt/shared/user1_file.txt sudo -u user2 touch /srv/projekt/shared/user2_file.txt sudo -u user2 rm /srv/projekt/shared/user1_file.txt # Sollte fehlschlagen!
Erweiterte Aufgaben
1. ACLs hinzufügen:
- Geben Sie user3 Lesezugriff auf backend/
2. Quota einrichten:
- Limitieren Sie user1 auf 100MB in /srv/projekt
3. Automatisierung:
- Erstellen Sie ein Skript für Cleanup alter Dateien
- Automatischer Report wer welche Dateien erstellt hat
Siehe auch
aufgaben/multiuser_projekt.txt · Zuletzt geändert: von 127.0.0.1
