Directory Listing: Unterschied zwischen den Versionen
Bernd (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
K typo |
||
Zeile 1: | Zeile 1: | ||
Wir haben im Webserver eingestellt, dass Verzeichnis-Inhalte nicht automatisch als Dateiliste angezeigt werden wenn keine ''index.html'' bzw. ''index.php''-Datei vorhanden ist. | Wir haben im Webserver eingestellt, dass Verzeichnis-Inhalte nicht automatisch als Dateiliste angezeigt werden wenn keine ''index.html'' bzw. ''index.php''-Datei vorhanden ist. Der Grund dafür ist, dass ein vergessenes Index-Dokument nicht dazu führen sollte, dass alle Welt sieht, was man alles für Dateien hat. | ||
Der Grund dafür ist, dass ein vergessenes Index-Dokument nicht dazu führen sollte, dass alle Welt sieht, was man alles für Dateien hat. | |||
==Zugriffsrechte== | ==Zugriffsrechte== | ||
Zeile 9: | Zeile 8: | ||
Dies ist im Normalfall schon so eingestellt. | Dies ist im Normalfall schon so eingestellt. | ||
==Directory-Listing freischalten== | ==Directory-Listing freischalten== | ||
Zeile 20: | Zeile 18: | ||
Die Datei kann in jedem Verzeichnis liegen und gilt dabei für das aktuelle und alle darunter liegenden Verzeichnisse. Somit kann eine gesamte Domain oder auch nur ein einzelnes Unterverzeichnis freigegeben werden. | Die Datei kann in jedem Verzeichnis liegen und gilt dabei für das aktuelle und alle darunter liegenden Verzeichnisse. Somit kann eine gesamte Domain oder auch nur ein einzelnes Unterverzeichnis freigegeben werden. | ||
==Für einzelne Unterordner wieder sperren== | ==Für einzelne Unterordner wieder sperren== | ||
Zeile 29: | Zeile 26: | ||
===per .htaccess=== | ===per .htaccess=== | ||
Analog zum oben beschriebenen Weg, kann man mit einer neuen '''.htaccess'''-Datei auch wieder die Dateiliste für einzelne Ordner abschalten. Dazu muss die Datei diesen Inhalt haben: | Analog zum oben beschriebenen Weg, kann man mit einer neuen '''.htaccess'''-Datei auch wieder die Dateiliste für einzelne Ordner abschalten. Dazu muss die Datei diesen Inhalt haben: | ||
Zeile 34: | Zeile 32: | ||
===per ACLs=== | ===per ACLs=== | ||
Sobald der Apache keine Leserechte mehr auf ein Verzeichnis hat, kann er keine Dateiliste mehr anzeigen. Das Leserecht kann man einfach mittels | Sobald der Apache keine Leserechte mehr auf ein Verzeichnis hat, kann er keine Dateiliste mehr anzeigen. Das Leserecht kann man einfach mittels | ||
Aktuelle Version vom 2. September 2008, 23:00 Uhr
Wir haben im Webserver eingestellt, dass Verzeichnis-Inhalte nicht automatisch als Dateiliste angezeigt werden wenn keine index.html bzw. index.php-Datei vorhanden ist. Der Grund dafür ist, dass ein vergessenes Index-Dokument nicht dazu führen sollte, dass alle Welt sieht, was man alles für Dateien hat.
Zugriffsrechte
Wie auf unserer Extra-Seite zum Thema Zugriffsrechte beschrieben, muss der Webserver zuerst per ACL Lese- und Betretungsrecht bekommen.
setfacl -m u:apache:rx verzeichnis
Dies ist im Normalfall schon so eingestellt.
Directory-Listing freischalten
Mittels einer Datei .htaccess muss dem Webserver mitgeteilt werden, dass er das betreffende Verzeichnis und alle Unterverzeichnisse als Dateiliste aufbereiten darf.
Diese Datei muss folgenden Inhalt haben:
Options +Indexes
Die Datei kann in jedem Verzeichnis liegen und gilt dabei für das aktuelle und alle darunter liegenden Verzeichnisse. Somit kann eine gesamte Domain oder auch nur ein einzelnes Unterverzeichnis freigegeben werden.
Für einzelne Unterordner wieder sperren
Natürlich kann diese Dateiliste auch für einzelne Unterordner eines freigegebenen Ordners wieder abgeschaltet werden.
Dafür gibt es zwei Möglichkeiten:
per .htaccess
Analog zum oben beschriebenen Weg, kann man mit einer neuen .htaccess-Datei auch wieder die Dateiliste für einzelne Ordner abschalten. Dazu muss die Datei diesen Inhalt haben:
Options -Indexes
per ACLs
Sobald der Apache keine Leserechte mehr auf ein Verzeichnis hat, kann er keine Dateiliste mehr anzeigen. Das Leserecht kann man einfach mittels
setfacl -m u:apache:x verzeichnis
entfernen (»nur Betreten«).
Das betreffend gesperrte Verzeichnis wird in der Liste des übergeordneten Verzeichnisses erst gar nicht angezeigt.