tas2580
Blog über Webentwicklung

Lighttpd optimieren

tas2580  

Der Lighttpd ist ein schlanker durch Module erweiterbarer Webserver. Besonders wenn man nur eine oder wenige Webseiten auf einem Server liegen hat finde ich den den Lighttpd deutlich besser wie den Apache Webserver. Mit einigen Wenigen eingriffen in der Konfiguration lasst sich nochmal so einiges optimieren.

Alle Beschriebenen Änderungen müssen in /etc/lighttpd/lighttpd.conf gemacht werden.

Server Tag ändern

Mit jedem Response Header wird der Name des Webservers ausgegeben, ein Angreifer könnte die Information nutzen um bekannt gewordene Sicherheitslücken auszunutzen. Aus diesem Grund ist es Sinnvoll den Server-Tag in irgendwas zu ändern was keine Rückschlüsse auf den verwenden Webserver zulässt. Dazu trägt man folgendes in die Konfiguration ein:

server.tag = "Mein Webserver"

Wenn man sich jetzt den Header anschaut der vom Webserver zurückgegeben wird stellt man fest das als Server "Mein Webserver" ausgegeben wird.

Zugriff auf Backups verbieten

Wenn man nicht aufpasst landen vom Editor automatisch angelegte Backups von PHP-Dateien auf dem Webserver. Das Problem daran ist das diese Dateien von PHP nicht interpretiert werden und so der Code samt evtl. enthaltenen Passwörtern im Browser angezeigt werden. Mit einem kleinen Eintrag in der Konfiguration kann man den Zugriff auf solche Dateien verbieten.

url.access-deny = ( "~", ".inc", ".old", ".bak", ".php~" )

HTTPS erzwingen

Wenn man auf allen seinen Webseiten SSL-Zertifikate installiert hat kann man grundsätzlich alle Zugriffe auf HTTPS umleiten. Dazu wird mod_redirect benütigt das man erst mal oben in der Konfiguration einfügen muss:

server.modules = (
        ...
	"mod_redirect",
        ...
)

Jetzt kann man weiter unten in der Konfiguration den Redirect einfügen so das alle Anfragen die über HTTP kommen auf HTTPS umgeleitet werden.

$HTTP["scheme"] == "http" {
    $HTTP["host"] =~ ".*" {
        url.redirect = (".*" => "https://%0$0")
    }
}

Inhalte komprimiert ausgeben

Um Traffic zu sparen und die Ladezeit zu verkürzen kann man einige Dateien wie JavaScripte oder CSS-Dateien komprimiert ausgeben, dazu wird das Modul mod_compress benötigt das man oben in der Konfiguration einbinden muss.

server.modules = (
        ...
	"mod_compress",
        ...
)

Jetzt kann man weiter unten in der Konfiguration das Modul konfigurieren. Hier wird angegeben welche encodings benutzt werden sollen, wo die komprimierten Dateien gecached werden und welche Dateitypen automatisch komprimiert werden sollen.

compress.allowed-encodings = ("bzip2", "gzip", "deflate")
compress.cache-dir         = "/var/cache/lighttpd/compress/"
compress.filetype          = ("text/plain", "text/html", "text/css", "application/xml", "text/javascript", "application/javascript", "application/x-javascript")

Ähnliche Beiträge


Kommentare


Bitte warten ...

Kommentar schreiben

URLs werden automatisch umgewandelt.
[b]DEIN TEXT[/b] für Fett gedruckt
[quote]DEIN ZITAT[/quote] für Zitate
[code]DEIN CODE[/code] für Code
captcha