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 inekaund 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_htmlgehört, Schreibrechte hat. -
Es wird erwartet, dass der Webserver (Apache, Nginx usw.) auf dieses Verzeichnis zugreifen, aber nicht unbefugt schreiben kann.
Wichtige Hinweise:
-
755ist im Allgemeinen für Verzeichnisse ausreichend, für Dateien kann644verwendet werden. -
Die Verwendung von
777sollte vermieden werden, da dies allen Benutzern vollständige Berechtigungen erteilt und ein Sicherheitsrisiko darstellt. -
Der Apache/Nginx-Systembenutzer ist normalerweise
www-data,apacheodernginx, 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.