Wie kann man in nginx den Server-Header entfernen?

Melden
  1. Warum sollte der Server-Header entfernt werden?
  2. Wie entfernt man den Server-Header in nginx?
  3. Anwendung der headers_more-Erweiterung
  4. Fazit

Der Server-Header ist eine HTTP-Antwort-Header-Information, die den Webserver identifiziert, der die Antwort liefert. Standardmäßig gibt nginx in diesem Header Informationen über sich selbst preis, zum Beispiel die Version des Servers. Aus Sicherheitsgründen oder aus Datenschutzüberlegungen heraus möchten viele Administratoren diesen Header entfernen oder zumindest anonymisieren.

Warum sollte der Server-Header entfernt werden?

Der Server-Header gibt Angreifern möglicherweise Informationen über die verwendete Server-Software und deren Version preis. Dies kann als Ausgangspunkt für gezielte Angriffe dienen, insbesondere wenn bekannte Sicherheitslücken in der verwendeten nginx-Version existieren. Durch das Entfernen oder Modifizieren des Server-Headers wird die Angriffsoberfläche reduziert und das System sicherer gemacht.

Wie entfernt man den Server-Header in nginx?

nginx selbst bietet keine native Einstellung, um den Server-Header vollständig zu entfernen. Es gibt jedoch verschiedene Ansätze, um den Header zu deaktivieren oder zu modifizieren. Eine bekannte Methode ist die Nutzung der Direktive server_tokens off; in der nginx-Konfigurationsdatei. Diese deaktiviert die Anzeige der nginx-Version, lässt aber standardmäßig noch den Server-Namen "nginx" im Header.

Um den Server-Header komplett zu entfernen oder zu ändern, können Drittanbieter-Module wie headers_more eingesetzt werden. Dieses Modul erlaubt es, HTTP-Header beliebig zu modifizieren, hinzuzufügen oder zu löschen. Mit headers_more kann man den Server-Header vollständig entfernen oder durch eine andere Zeichenkette ersetzen.

Anwendung der headers_more-Erweiterung

Das Modul headers_more muss zum nginx-Server hinzugefügt werden, entweder durch Kompilierung mit diesem Modul oder Installation einer bereits enthaltenen nginx-Erweiterung. Ist das Modul installiert, kann Folgendes in der nginx-Konfiguration verwendet werden:

more_clear_headers Server;

Diese Direktive veranlasst nginx, den Server-Header aus den HTTP-Antworten zu entfernen. Alternativ kann der Header auch modifiziert werden, um eine falsche oder leere Information auszugeben.

Fazit

Das Entfernen des Server-Headers in nginx ist eine sinnvolle Maßnahme zur Erhöhung der Sicherheit. Während die Standardkonfiguration nur die Versionsanzeige entfernt, aber den Server-Namen beibehält, bietet die Verwendung von Modulen wie headers_more vollständige Kontrolle über den Header. Administratoren sollten diese Techniken je nach Sicherheitsanforderung und Einsatzgebiet anwenden.

0

Kommentare