Verstehen von Linux-Dateiberechtigungen und wie man sie verwaltet.
Einer der grundlegenden Bestandteile der Linux-System-Sicherheit und der Multi-User-Architektur ist das Modell der Datei-Berechtigungen. Im Gegensatz zu Windows durchsetzt Linux strikt das Eigentum und die Zugriffssteuerung für jede Datei und jedes Verzeichnis im System. Das Beherrschen von Datei-Berechtigungen betrifft nicht nur die Sicherheit — es ist entscheidend für die Verwaltung von Servern, die Bereitstellung von Software, das Ausführen von Skripten und die Automatisierung von Aufgaben.
Das Linux-Dateiberechtigungsmodell
Jede Datei und jedes Verzeichnis in Linux hat drei Arten von Zugriffsrechten, die drei Arten von Benutzern zugewiesen sind:
| Benutzerklasse | Beschreibung |
|---|---|
| Besitzer | Der Benutzer, der die Datei besitzt |
| Gruppe | Benutzer in der Gruppe der Datei |
| Andere | Alle anderen Benutzer im System |
Jede Klasse kann drei Arten von Berechtigungen erhalten:
| Berechtigung | Symbol | Bedeutung |
|---|---|---|
| lesen | r | Dateiinhalte anzeigen / Verzeichnis auflisten |
| schreiben | w | Datei oder Verzeichnis ändern |
| ausführen | x | Datei ausführen oder Verzeichnis zugreifen |
Berechtigungen mit ls -l anzeigen
Verwenden Sie den Befehl ls -l, um die Datei-Berechtigungen anzuzeigen:
ls -l myscript.sh
Ausgabe:
-rwxr-xr-- 1 alice devs 2048 Jan 25 10:00 myscript.sh
Aufschlüsselung:
- – → reguläre Datei
- rwx → Besitzer (lesen/schreiben/ausführen)
- r-x → Gruppe (lesen/ausführen)
- r– → andere (nur lesen)
Berechtigungen mit chmod ändern
📌 Symbolischer Modus:
chmod u+x myscript.sh # Add execute to user chmod g-w myscript.sh # Remove write from group chmod o=r myscript.sh # Set read-only for others
📌 Numerischer Modus:
chmod 755 myscript.sh # rwx for owner, rx for group, rx for others
| Octal | Bedeutung |
|---|---|
| 7 | rwx |
| 6 | rw- |
| 5 | r-x |
| 4 | r– |
| 0 | — |
Beispiel:
chmod 644 file.txt # owner: rw-, group: r--, others: r-- chmod 700 script.sh # owner: rwx, group/others: ---
Besitz mit chown und chgrp verwalten
Besitzer der Datei ändern:
chown alice file.txt
Gruppe ändern:
chgrp devs file.txt
Beides ändern:
chown bob:admins file.txt
Verwenden Sie -R, um Änderungen rekursiv anzuwenden:
chown -R www-data:www-data /var/www/
Spezielle Berechtigungsbits
Linux unterstützt drei spezielle Modi, die das Standardverhalten ändern:
1. SUID (Set User ID)
- Gilt für ausführbare Dateien
- Wird mit Rechten des Besitzers ausgeführt, nicht mit den Rechten des Aufrufers
chmod u+s /usr/bin/passwd
🔍 ls -l Ausgabe: -rwsr-xr-x
Anwendungsfall: /usr/bin/passwd muss als root ausgeführt werden, um /etc/shadow zu aktualisieren.
SGID (Set Group ID) s
- Bei Dateien: wird mit den Gruppen-Rechten der Datei ausgeführt
- Bei Verzeichnissen: neue Dateien erben die Gruppe
chmod g+s /opt/project
🔍 ls -l Ausgabe: drwxr-sr-x
Nützlich in gemeinsamen Entwicklungsordnern.
Sticky Bit t
- Bei Verzeichnissen: nur der Besitzer kann seine Dateien löschen/umbenennen
- Häufig in /tmp, um Benutzerdateien zu schützen
chmod +t /shared/folder
ls -ld /tmpdrwxrwxrwt 10 root root 4096 Jan 28 12:00 /tmp
Umask verstehen
Die umask legt die Standardberechtigungen für neue Dateien/Verzeichnisse fest:
Aktuellen Wert überprüfen: umask
Häufiger Wert: 0022
| Datei | Standardberechtigungen | Mit umask 0022 |
|---|---|---|
| Datei | 666 → 644 | rw-r–r– |
| Verzeichnis | 777 → 755 | rwxr-xr-x |
Temporäre umask setzen:
umask 0077 # Files: 600, Dirs: 700
Rekursive Berechtigungsänderungen
Berechtigungen für Ordner und Dateien separat setzen:
find /my/project -type d -exec chmod 755 {} ; find /my/project -type f -exec chmod 644 {} ;
Fazit
Die Linux-Dateiberechtigungen bieten eine feingranulare Zugriffskontrolle für Sicherheit, Multi-User-Umgebungen und Automatisierung. Zu verstehen, wie man Berechtigungen anzeigt, ändert und durchsetzt, ermöglicht es Ihnen, Server selbstbewusst zu verwalten, Daten zu schützen und sicher zusammenzuarbeiten.
Egal, ob Sie Webanwendungen bereitstellen, Cloud-Server verwalten oder Shell-Skripte erstellen — sich mit chmod, chown, umask und speziellen Berechtigungsbits auszukennen, ist unerlässlich.
