Home / WebServer / Apache / Apache Webserver Directory Listing (Verzeichnisauflistung) deaktivieren / aktivieren
apache logo

Apache Webserver Directory Listing (Verzeichnisauflistung) deaktivieren / aktivieren

Wenn das Directory Listing im Apache Webserver aktiviert ist, stellt das ein hohes Sicherheitsrisiko dar und sollte deswegen deaktiviert werden.

Apache directory listing deaktivierenDirectory Listing ist eine Webserver Funktion, um im Browser bequem den Inhalt eines Ordners auflisten zu lassen ohne dafür ein entsprechendes Skript zu verwenden. Bei lokal installierten Webservern mag diese Funktion ganz praktisch erscheinen. (siehe Screenshot).

Aber man sollte sich doch Gedanken über die Verwendung der Funktion im Live Betrieb machen. Potentiellen Angreifern wird durch die Auflistung und Ausgabe der Dateien ihre Arbeit erleichtert. In der Standard Apache Konfiguration ist die Verzeichnisauflistung aktiviert und kann folgendermaßen deaktiviert werden:

Apache directory Listing in der VirtualHost Konfiguration deaktivieren:

Unter Debian und Ubuntu sieht die Directory Direktive der VirtualHost Konfiguration, nach der Apache Installation folgendermaßen aus:

<Directory /var/www/>
  Options Indexes FollowSymLinks MultiViews
  AllowOverride None
  Order allow,deny
  allow from all
</Directory>

Der Options Parameter „Indexes“ ist hierfür für das Directory Listing verantwortlich. Wenn vor Indexes ein Minus gesetzt wird, ist die Verzeichnisauflistung deaktiviert.

<Directory /var/www/>
  Options -Indexes FollowSymLinks MultiViews
  AllowOverride None
  Order allow,deny
  allow from all
</Directory>

Apache Verzeichnisauflistung in der apache2.conf global deaktivieren

Am Ende der /etc/apache2/apache2.conf folgenden Teil einfügen:

Options -Indexes

Hierbei sollte aber beachtet werden dass in der VirtualHost Konfiguration der Wert Indexes komplett entfernt wird, da er ansonsten wieder überschrieben wird. Wenn das Listing für bestimmte Webseiten verwendet werden soll, kann es so einfach über die vHosts aktiviert werden.

Apache Directory Listing für bestimmte Ordner deaktivieren oder aktivieren

Wenn die Verzeichnisauflistung nur für bestimmte Ordner deaktiviert oder aktiviert werden soll, kann einfach eine .htaccess Datei im jeweiligen Webserver Verzeichnis erstellt werden, die folgende Zeile beinhaltet:

Options -Indexes

Damit die .htaccess Datei aber auch erkannt wird muss die „AllowOverride All“ in der vHost Konfiguration aktiviert sein.

Apache Webserver Directory Listing (Verzeichnisauflistung) deaktivieren / aktivieren
2.64 (52.86%) 42 Bewertungen

Auch cool

HowTo: Oracle Java 8 JRE / JDK- Installation und Upgrade unter Debian Wheezy

Anleitung zur Installation von Oracle Java 8 unter Debian Wheezy und Upgrade von Java 7 auf …

6 Kommentare

  1. Oh ja und es gibt eine Menge Server wo das so ist. Einmal hab ich ne ältere Domain aufgerufen und das war das Directory Listing auch an. Drauf zu sehen waren eine Menge private dokus. Da hat dann einer seine privaten Dateien auf dem Webspace geparkt… Sehr fahrlässig…

  2. „Damit die .htaccess Datei aber auch erkannt wird muss die “AllowOverride All” in der vHost Konfiguration aktiviert sein.“

    Das ist falsch. Ein “AllowOverride All” sollte man tunlichst vermeiden und nur die Optionen erlauben die man braucht.
    AllowOverride Indexes sollte ausreichend sein.

    • Hey Kero,

      kommt auf die Konfiguration an. Wenn man Kunden am Server hat sollte man sich überlegen welche Optionen man „overriden“ lässt. Aber an und für sich lässt sich so alles in der .htaccess konfigurieren. Ich wollte es nur als Zusatz erwähnen 😉

      Gruß
      Patrick

  3. Also bei mir hat die Anleitung gerade wunderbar funktioniert und die Verzeichnis Auflistung wurde deaktiviert! Danke

  4. @Ulmer
    Ja das sieht man oft. Da braucht man sich dann nicht wundern, wenn der Server gekapert wird und privates in der gegen umhergeistert…

  5. Vielen Dank für die kurze & auf den Punkt gebrachte Erklärung.