Archiv der Kategorie: Linux Howto Tutorials

GNU/Linux Howto’s and Tutorials unblog technical contribution for professionals

Apache Serversignatur deaktivieren

HTTP-Server-Header, Serversignatur bei Apache, PHP, Nginx

Es gibt zahlreiche Möglichkeiten, wie Webseiten Sicherheitsbedrohungen ausgesetzt werden. Informationen in der Serversignatur sind für Systeme erhöhte Risiken und können gegen sie eingesetzt werden.

Die Serversignatur liefert wichtige Information über den Server mit den Erweiterungen und das Betriebssystem. Bei einem Apache Server auf Debian GNU/Linux wird die Apache Versionsnummer und Betriebssysteminformation in der HTTP Server Header Signatur angezeigt.

Diese im HTTP Server Header angezeigte Information bei Zeile 10 gibt aufschluss über die Webserver Versionsnummer und die PHP-Version, die OpenSSL Version für Transport Layer Security sowie das Betriebssystem.

Signaturen können vertrauliche Informationen zu den auf dem Webserver ausgeführten Softwareversionen enthalten. Wird eine Seite auf dem Server nicht gefunden, sendet der Server dem Client eine Fehlerseite, dabei erscheint im Browser die Seite, Not Found.

404_Not_Found
Abbildung: Browser Seite mit HTTP-Statuscode 404 und Serversignatur

Ein toter Link wird mit dem HTTP-Statuscode 404 dem Browser zurückgegeben, dazu werden noch weitere Informationen über den Webserver sowie die verwendete Version bekanntgegeben.

Es wird empfohlen die Serversignatur zu deaktivieren, wenn das System vor offenen Bedrohungen geschützt werden soll. In diesem Tutorial wird gezeigt, wie die Serversignatur deaktiviert werden kann.

Apache HTTP Serversignatur bei Debian GNU/Linux deaktivieren

Unter Debian 10 (buster) wird die Konfiguration der Serversignatur in der Datei security.conf vorgenommen.

Die Standard Einstellung bei Debian 10 (buster) und auch bei Ubuntu für ServerSignature ist On und ServerTokens ist Full. Daktivieren lassen sich diese wie folgt.

Die änderung der Apache Webserver Konfiguration übermehmen.

Apache HTTP Serversignatur bei CentOS GNU/Linux deaktivieren

Bei CentOS (RedHat) wird die änderung der Serversignatur in der Apache Konfigurationsdatei httpd.conf vorgenommen.

Deaktivierung der HTTP-Serversignatur für CentOS übernehmen.

Nach der deaktivierung der Serversignatur wird diese in der HTTP Server Header Ausgabe nicht mehr angezeigt. Die überprüfung der änderung kann mit wget oder hier gemacht werden.

Das deaktivieren der Serversignatur kann auch mit einer .htaccess-Datei erreicht werden, diese wird falls nicht bereits vorhanden, in der Docroot erstellt.

PHP-Version im HTTP Server Header deaktivieren

Die Ausgabe der PHP Versionsnummer wird bei Debian 10 (buster) wie folgt in der Datei php.ini deaktiviert.

Bei CentOS (RedHat) wird der PHP Version Header in der php.ini unter folgendem Pfad vorgenommen.

Apache HTTP-Response-Header

Die Apache ServerTokens Direktive hat die folgenden möglichen Werte, die an Clients gesendet werden, wenn der spezifische Wert festgelegt wird.

Diese Einstellung gilt für den gesamten Server und kann nicht auf Virtual-Host-Basis aktiviert oder deaktiviert werden.

Nginx HTTP Server_tokens OFF

Für den Nginx Webserver ist die Datei nginx.conf zu editieren.

Die deaktivierung der Nginx Serversignatur übernehmen.

Systemgebietsschema unter Linux Festlegen

Gebietsschemas bestehen aus einer Reihe von Umgebungsvariablen, um die Sprach-, Länder- und Zeichenkodierung für Anwendungen und Shell-Sitzung auf einem Linux-System zu definieren. Diese Umgebungsvariablen werden von Systembibliotheken und länderspezifischen Anwendungen auf dem System verwendet.

Das Gebietsschema wirkt sich auf die Uhrzeit und das Datumsformat aus, den ersten Wochentag, Zahlen, Währung und viele weitere Werte, die entsprechend der Sprache oder Region (Land) formatiert sind, die bei einem Linux-System festgelegt werden.

Das Dienstprogramm locale und localectl liefert Informationen zum aktuell installierten Gebietsschema und ändert diese bei bedarf.

Eine Liste aller verfügbaren Gebietsschemas ausgeben.

Systemgebietsschema ändern

Soll das Gebietsschema geändert werden, wird der Befehl update-locale und localectl verwendet. Mit der Variable LANG kann das Gebietsschema für das gesamte System festgelegt werden.

Der folgende Befehl setzt LANG auf de_DE.UTF-8

Um ein Gebietsschema für einen einzelnen Benutzer festzulegen, kann man einfach die Datei ~/.bash_profile öffnen und die folgenden Zeilen hinzufügen.

Bei Debian 10 (Buster) bietet sich zum festlegen des Systemgebietsschema das Diensprogramm dpkg-reconfigure an.

Die Gebietsschemaeinstellungen befinden sich in den folgenden Dateien.

  • /etc/default/locale – Ubuntu/Debian
  • /etc/locale.conf – CentOS/RHEL

Diese Dateien können auch manuell mit einem bevorzugten Befehlszeileneditoren wie Vim oder Nano bearbeitet werden, um das Systemgebietsschema zu konfigurieren.

Weitere Hilfe finden man in den Manpages.

Weiterleiten von Postfix-Alias ​​an dev-null

Postfix Virtual Alias do-not-reply Weiterleitung an /dev/null

In Situationen bei diesen E-Mail-Adressen vom Typ „do-not-reply“ versendet werden, dabei das Postfach in regelmäßigen Abständen geleert werden müsste, oder es soll das Postfach erst gar nicht geben, gibt es dazu für eingehende E-Mails die einfache Möglichkeit, die verwendung eines Postfix-Alias und Virtual Alias mit Weiterleitung auf das Nullgerät – /dev/null.

Die übliche Lösung besteht also durch Weiterleitung an /dev/null. In einem Lokalen-Setup kann dies in /etc/aliases gemacht werden.

Wenn jedoch virtuelle Postfix-Domains verwendet werden, wird es etwas aufwendiger. Bei virtuellen Domänen Benutzern können E-Mails nicht an eine Datei weitergleitet werden. Es muss an einen Benutzer oder eine E-Mail-Adresse gehen, hierzu wird ein Alias-Benutzer in /etc/aliases hinzugefügt.

Danach wird der neue Alias in der aliases.db hinzugefügt.

Der Alias zeigt auf ein Virtual Domain Alias in /etc/postfix/virtual.

Hinweis: Standardmässig ist die Sendmail Datei aliases unter /etc, für Postfix wird aliases oft kopiert unter /etc/postfix, dazu sich vergewissern was in /etc/postfix/main.cf definiert ist bei alias_maps.

Danach führt man postmap aus.

und aktiviert die Postfix Änderung.

Wie weiss man ob die Änderung funktioniert!
Mit dem folgenden Befehl kann überprüft werden, ob der Alias ​​ordnungsgemäß eingerichtet wurde.

Es wird folgende Ausgabe gemacht.