In Linux und anderen Unix-basierten Betriebssystemen sind die Dateiberechtigungen ein wichtiger Bestandteil der Dateisystem-Sicherheit. Jede Datei oder Ordner hat drei Arten von Benutzern, die darauf zugreifen können: den Eigentümer, die Gruppe und andere Benutzer. Jede dieser Benutzergruppen hat separate Berechtigungen zum Lesen, Schreiben und Ausführen der Datei oder des Ordners.
Die Zugriffsrechte können entweder symbolisch oder numerisch angegeben werden. Das Symbol r
steht für Leserechte (englisch, read), w
für Schreibrechte (englisch, write) und x
für Ausführungsrechte (englisch, execute). Diese Symbole können in Kombination verwendet werden, um die Zugriffsrechte für jeden Benutzer zu definieren. Wenn die Zugriffsrechte für eine Datei oder einen Ordner nicht korrekt festgelegt sind, kann dies zu Sicherheitsproblemen führen, da Benutzer möglicherweise auf Dateien zugreifen oder sie ändern können, für die sie keine Berechtigung haben.
drwxr-xr-x 3 user group 0 Mar 8 09:00 folder/
-rw-r--r-- 1 user group 0 Mar 8 09:00 example.txt
oder-rw-r--r--
drwxr-xr-x
: Dieser Teil zeigt die Berechtigungen für den Eigentümer, die Gruppe und andere Benutzer an.d
zeigt an, dass es sich um ein Verzeichnis handelt (englisch, directory). Wenn es sich stattdessen um eine reguläre Datei handeln würde, steht hier ein Bindestrich (-
).r
= Leserechte (englisch, read)w
= Schreibrechte (englisch, write)x
= Ausführungsrechte (englisch, execute)-
steht für fehlende Rechte
1
: Dieser Teil zeigt die Anzahl der harten Links (englisch, hardlinks) auf die Datei an. Eine harte Verknüpfung ist ein Verweis auf eine Datei von einem anderen Ort aus, der als eigenständige Datei behandelt wird. Wenn es nur eine harte Verknüpfung gibt, ist dieser Wert 1.user
: Dieser Teil zeigt den Eigentümer der Datei an.group
: Dieser Teil zeigt die Gruppe an, der der Eigentümer der Datei angehört.0
: Dieser Teil zeigt die Größe der Datei in Bytes an.Mar 8 09:00
: Dieser Teil zeigt das Datum und die Uhrzeit an, an dem die Datei zuletzt geändert wurde.example.txt
oderfolder/
: Ist der Name der Datei oder des Ordners
Ändern der Berechtigungen und Berechtigungsbits
Es gibt drei Berechtigungsbits, die für jede Gruppe von Benutzern (Eigentümer, Gruppe, Andere) gesetzt werden können:
- Lesen (
r
= 4) - Schreiben (
w
= 2) - Ausführen (
x
= 1)
Die Summe dieser Bits ergibt die Zahl, die in den Dateiberechtigungen verwendet wird. Zum Beispiel repräsentiert die Zahl 7 (rwx
) die Berechtigung, die Lesen, Schreiben und Ausführen für den Eigentümer, die Gruppe und jeden anderen Benutzer erlaubt.
Hier sind einige der gängigsten Zahlen und ihre Bedeutung in den Dateiberechtigungen:
- Keine Berechtigung (
---
) - Ausführberechtigung (
--x
) - Schreibberechtigung (
-w-
) - Schreib- und Ausführberechtigung (
-wx
) - Leserechtigung (r–)
- Leserechtigung und Ausführberechtigung (
r-x
) - Leserechtigung und Schreibberechtigung (
rw-
) - Leserechtigung, Schreibberechtigung und Ausführberechtigung (
rwx
)
Um die Dateiberechtigungen für eine Datei oder ein Verzeichnis mit numerischen Werten zu ändern, wird der Befehl chmod
verwendet.
$ chmod 755 example_directory
$ ls -l
drwxr-xr-x 2 user group 4096 Mar 8 10:00 example_directory
$
In diesem Beispiel wird die Berechtigung für den Eigentümer auf rwx
(7
), die Berechtigung für die Gruppe auf r-x
(5
) und die Berechtigung für andere Benutzer auf r-x
(5
) gesetzt, um insgesamt eine Berechtigung von 755
zu erhalten.
Links
- https://www.linuxfoundation.org/blog/blog/classic-sysadmin-understanding-linux-file-permissions: Leitfaden zur Verwaltung von Dateiberechtigungen in Linux.
- https://www.redhat.com/sysadmin/linux-file-permissions-explained: Erklärung der Linux-Dateiberechtigungen und wie sie funktionieren.
- https://wiki.archlinux.org/title/File_permissions_and_attributes: Anleitung zur Verwaltung von Dateiberechtigungen und Attributen in Linux.
- https://linuxize.com/post/understanding-linux-file-permissions/: Einfache Erklärung der Linux-Dateiberechtigungen und wie sie funktionieren.