15.11. Sicherheit

15.11.1. Das Risiko gering halten

Wenn man auf einem Rechner keinen Webserver benötigt, sollte man Apache im Runlevel-Editor deaktivieren oder erst gar nicht installieren bzw. deinstallieren. Jeder Server, der auf einem Rechner nicht läuft, ist eine Angriffmöglichkeit weniger. Dies gilt insbesondere für Rechner, die als Firewalls dienen, auf diesen sollten grundsätzlich nach Möglichkeit keine Server laufen.

15.11.2. Zugriffsrechte

15.11.2.1. DocumentRoot sollte Root gehören

Per Voreinstellung gehört das Verzeichnis DocumentRoot (/srv/www/htdocs) und das CGI-Verzeichnis dem Benutzer root. Das sollte man auch so belassen. Sind diese Verzeichnisse für jedermann beschreibbar, kann dort jeder Benutzer Dateien ablegen. Diese Dateien werden dann von Apache ausgeführt, und zwar als Benutzer wwwrun. Apache sollte keine Schreibrechte auf die Daten und Skripte haben, die er ausliefert. Deshalb sollten diese nicht dem Benutzer wwwrun, sondern zum Beispiel root gehören.

Möchte man Usern die Möglichkeit geben, Dateien im Dokument-Verzeichnis von Apache unterzubringen, so sollte man, anstatt dieses für alle beschreibbar zu machen, ein für alle beschreibbares Unterverzeichnis einrichten, zum Beispiel /srv/www/htdocs/wir_ueber_uns.

15.11.2.2. Dokumente aus dem eigenen Home-Verzeichnis veröffentlichen

Eine weitere Möglichkeit dafür zu sorgen, dass Anwender eigene Dateien ins Netz stellen können ist, in der Konfigurationsdatei ein Verzeichnis im Home des Users anzugeben, in dem dieser seine Dateien für die Web-Präsentation ablegen kann (zum Beispiel ~/public_html). Dies ist bei per Voreinstellung aktiviert, die Einzelheiten sind im Abschnitt 15.7.2.17. “UserDir” beschrieben.

Auf diese Webseiten kann dann unter Angabe des Users in der URL zugegriffen werden, die URL enthält die Bezeichnung ~username als Kürzel für das entsprechende Verzeichnis im Home-Verzeichnis des Anwenders. Ein Beispiel: Die Eingabe der URL http://localhost/~tux in einem Browser zeigt die Dateien aus dem Verzeichnis public_html im Home-Verzeichnis des Anwenders an.

15.11.3. Immer auf dem Laufenden bleiben

Wer einen Webserver betreibt sollte, besonders wenn dieser Webserver öffentlich verfügbar ist, immer auf dem neuesten Stand bleiben, was Fehler und die dadurch möglichen Angriffsflächen angeht.

Quellen für die Recherche nach Exploits und Fixes sind im Abschnitt 15.13.3. “Sicherheit” aufgelistet.