Das korrekte Festlegen von Datei- und Ordnerberechtigungen auf Webservern ist sowohl für die Sicherheit als auch für das korrekte Funktionieren des Systems von großer Bedeutung. In Linux-Umgebungen können Datei-/Ordnerberechtigungen mit chmod
und die Datei-/Ordnerbesitzrechte mit chown
geändert werden. Im Folgenden gehen wir detailliert auf den Verwendungszweck und die Funktionsweise dieser Befehle ein.
1. Festlegen von Ordnerberechtigungen (chmod)
sudo chmod -R 0755 uploads2
Erläuterung:
-
chmod
: Wird verwendet, um einer Datei oder einem Ordner Berechtigungen zuzuweisen. -
-R
: Wendet rekursiv an (einschließlich aller Unterordner und aller darin enthaltenen Dateien). -
0755
:-
Besitzer: Lesen, Schreiben, Ausführen (7)
-
Gruppe: Lesen, Ausführen (5)
-
Andere: Lesen, Ausführen (5)
-
Verwendungszweck: Stellt sicher, dass der Webserver Dateien lesen und ausführen kann, Personen außerhalb des Systems jedoch keine Änderungen vornehmen können.
2. Ändern des Dateibesitzes (chown)
sudo chown -R eka:eka uploads2
Erläuterung:
-
chown
: Ändert den Besitz. -
-R
: Wendet es zusammen mit seinen Unterverzeichnissen an. -
eka:eka
: Ändert den Benutzernamen ineka
und den Gruppennamen ineka
. -
uploads2
: Der Ordner, dessen Besitz geändert werden soll.
Verwendungszweck: Laravel- oder PHP-Anwendungen müssen dem richtigen Benutzer gehören, damit sie Dateien schreiben können.
3. Zuweisen des Besitzes zum Web-Root-Verzeichnis
sudo chown -R eka:eka /home/eka/public_html
Erläuterung:
Dieser Befehl weist dem Benutzer eka
und der Gruppe eka
den Besitz aller Dateien und Ordner im Verzeichnis /home/eka/public_html
zu.
Verwendungszweck:
-
In Hosting- oder VPS-Umgebungen wird erwartet, dass nur der Benutzer, dem das Verzeichnis
public_html
gehört, Schreibrechte hat. -
Es wird erwartet, dass der Webserver (Apache, Nginx usw.) auf dieses Verzeichnis zugreifen, aber nicht unbefugt schreiben kann.
Wichtige Hinweise:
-
755
ist im Allgemeinen für Verzeichnisse ausreichend, für Dateien kann644
verwendet werden. -
Die Verwendung von
777
sollte vermieden werden, da dies allen Benutzern vollständige Berechtigungen erteilt und ein Sicherheitsrisiko darstellt. -
Der Apache/Nginx-Systembenutzer ist normalerweise
www-data
,apache
odernginx
, die Gruppenberechtigungen sollten je nach Bedarf angepasst werden.
Unter Linux sind die Befehle chmod
und chown
grundlegende Werkzeuge, um die Dateistruktur Ihres Servers ordentlich und sicher zu verwalten. Die korrekte Einstellung dieser Berechtigungen ist unerlässlich für das reibungslose Funktionieren von Webanwendungen.