Es ist sehr wichtig, dass die Sicherheit deiner WordPress-Seite korrekt eingerichtet ist, insbesondere, wenn du dich vor Hackern schützen möchtest. Es gibt zahlreiche verschiedene Verbesserungen und bewährte WordPress-Sicherheitspraktiken, die du implementieren kannst, um sicherzustellen, dass deine Website gesperrt ist. Wenn deine WordPress-Seite über HTTPS ausgeführt wird, ist eine der Verbesserungen, die wir empfehlen, den HSTS-Sicherheitsheader zu implementieren, da er dazu beitragen kann, Man-in-the-Middle-Angriffe (MitM) und Cookie-Hijacking zu verhindern.

Was ist HSTS (Strict Transport Security)?

HSTS steht für HTTP Strict Transport Security und wurde bereits 2012 von der IETF in RFC 6797 spezifiziert. Es wurde erstellt, um den Browser zu zwingen, sichere Verbindungen zu verwenden, wenn eine Site über HTTPS ausgeführt wird. Es handelt sich um einen Sicherheitsheader, den du deinem Webserver hinzufügst und der im Antwortheader als Strict-Transport-Security angezeigt wird. HSTS ist wichtig, da es die folgenden Probleme behebt:

  • Alle Versuche von Besuchern, die ungesicherte Version (HTTP: //) einer Seite auf deiner Seite zu verwenden, werden automatisch an die gesicherte Version (HTTPS: //) weitergeleitet.
  • Alte HTTP-Lesezeichen und Personen, die die HTTP-Version deiner Website eingeben, sind Man-in-the-Middle-Angriffen ausgesetzt. Dies sind Angriffe, bei denen der Angreifer die Kommunikation zwischen Parteien verändert und sie zu der Annahme verleitet, dass sie noch miteinander kommunizieren.
  • Ermöglicht nicht das Überschreiben der ungültigen Zertifikatnachricht, wodurch der Besucher wirklich geschützt wird.
  • Cookie-Hijacking: Dies kann auftreten, wenn jemand ein Sitzungscookie über eine ungesicherte Verbindung stiehlt. Cookies können alle Arten von wertvollen Informationen wie Kreditkarteninformationen, Namen, Adressen usw. enthalten.

So fügst du deiner WordPress-Seite HSTS hinzu

Technisch gesehen fügst du HSTS zum Webserver selbst hinzu, der dann auf HTTP-Anforderungen an deine WordPress-Seite angewendet wird. In der Regel wird eine 301-Weiterleitung hinzugefügt, wenn eine Weiterleitung von HTTP zu HTTPS erfolgt. Google hat offiziell gesagt, dass du sowohl 301-Server-Weiterleitungen als auch den HSTS-Header zusammen verwenden kannst.

Obwohl unsere Systeme standardmäßig die HTTPS-Version bevorzugen, kannst du dies auch für andere Suchmaschinen klarer machen, indem du deine HTTP-Seite auf deine HTTPS-Version umleitest und den HSTS-Header auf deinem Server implementierst. Zineb Ait Bahajji, Google Security Team

Es gibt verschiedene Arten von Anweisungen und / oder Sicherheitsstufen, die auf den HSTS-Header angewendet werden können. Im Folgenden findest du die grundlegendste Richtlinie, die die Richtlinie zum Höchstalter verwendet. Dies definiert die Zeit in Sekunden, für die der Webserver nur über HTTPS liefern soll.

Aktiviere HSTS in Apache

Füge einfach den folgenden Code zur hosts-Datei hinzu.

Header always set Strict-Transport-Security max-age=31536000

Aktiviere HSTS in NGINX

Füge einfach den folgenden Code zu deiner NGINX-Datei hinzu.

add_header Strict-Transport-Security "max-age=31536000";

Wenn du ein Kinsta-Kunde bist und den HSTS-Header zu deiner WordPress-Seite hinzufügen möchtest, kannst du ein Support-Ticket eröffnen und wir können es schnell für dich hinzufügen. Tatsächlich bietet das Hinzufügen des HSTS-Headers Leistungsvorteile. Wenn jemand versucht, deine Website über HTTP zu besuchen, anstatt eine HTTP-Anfrage zu stellen, wird diese einfach auf die HTTPS-Version umgeleitet.

HSTS-Preload

Es gibt auch HSTS-Preloading. Dies bedeutet, dass deine Website und / oder Domain auf eine genehmigte HSTS-Liste gesetzt wird, die tatsächlich in den Browser integriert ist. Google erstellt diese Liste offiziell und sie wird von Chrome, Firefox, Opera, Safari, IE11 und Edge verwendet. Sende deine Website an die offizielle HSTS-Preload-Liste.

HSTS-Preload
HSTS-Preload

Du musst jedoch einige zusätzliche Anforderungen erfüllen, um berechtigt zu sein.

  1. Der Server muss über ein gültiges SSL / TLS-Zertifikat verfügen. (TLS vs. SSL: was ist der Unterschied?)
  2. Umleiten des gesamten Datenverkehr auf HTTPS
  3. Stelle HSTS in der Basisdomain bereit.
  4. Stelle alle Subdomains über HTTPS bereit, insbesondere auch die WWW-Subdomain, falls vorhanden.
  5. Das Verfallsdatum muss mindestens 1 Jahr betragen (31536000 Sekunden)
  6. Die includeSubdomains-Token-Direktive muss angegeben werden
  7. Die Preload-Token-Direktive muss angegeben werden.

Dazu musst du deinem HSTS-Header die zusätzlichen Subdomains und Preload-Direktiven hinzufügen. Nachfolgend findest du ein Beispiel für den aktualisierten HSTS-Header.

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload";

Faire Warnung: Es kann schwierig und zeitaufwändig sein, deine Domain von der Preload-Liste zu entfernen. Stelle daher sicher, dass du HTTPS auf lange Sicht verwendest.

Überprüfe den HSTS-Header

Es gibt einige einfache Möglichkeiten, um zu überprüfen, ob das HSTS auf deiner WordPress-Seite funktioniert. Du kannst Google Chrome Devtools starten, auf die Registerkarte „Netzwerk“ klicken und die Registerkarte „Headers“ anzeigen. Wie du weiter unten auf unserer Kinsta-Website sehen kannst, wird der HSTS-Wert “strict-transport-security: Höchstalter = 31536000″ angewendet.

strict transport security http response

Du kannst deine WordPress-Seite auch mit einem kostenlosen Online-Tool wie securityheaders.io scannen, mit dem du weißt, ob der Header „strict-transport-security“ angewendet wird oder nicht.

scan security headers

HSTS Browser-Unterstützung

Caniuse zufolge ist die Browser-Unterstützung für HSTS mit über 80% weltweit und über 95% in den USA sehr hoch. Die Unterstützung für HSTS in IE11 wurde 2015 hinzugefügt. Derzeit ist Opera Mini der einzige moderne Browser, der dies nicht unterstützt.

hsts browser support

Wir empfehlen außerdem, diesen Artikel von Tim Kadlec über HSTS und Let’s Encrypt zu lesen.

HSTS Auswirkung auf SEO

Nachdem deine Website genehmigt und in die HSTS-Vorladeliste aufgenommen wurde, werden möglicherweise Warnungen von Google Search Console oder anderen SEO-Tools von Drittanbietern bezüglich 307 Weiterleitungen angezeigt. Dies liegt daran, dass beim Versuch, deine Website über HTTP zu besuchen, jetzt eine 307-Umleitung im Browser erfolgt, anstatt einer 301-Umleitung (siehe unten).

HSTS – Strict-Transport-Security 307-Umleitung
HSTS – Strict-Transport-Security 307-Umleitung

Normalerweise wird eine 307-Weiterleitung nur für temporäre Weiterleitungen verwendet. Eine 301-Umleitung wird für URLs verwendet, die permanent verschoben wurden. Sollte es sich also nicht um eine 301-Umleitung handeln? Und was ist mit den SEO-Konsequenzen?

Tatsächlich findet hinter den Kulissen immer noch eine 301-Weiterleitung statt. Die 307-Umleitung findet auf Browserebene statt, nicht auf Serverebene. Du kannst die Seite über ein Tool ausführen, das die Umleitung auf Serverebene überprüft, z. B. httpstatus, und du wirst feststellen, dass tatsächlich noch eine 301-Umleitung stattfindet. Daher brauchst du dir keine Sorgen zu machen, dass der HSTS-Header Auswirkungen auf deine SEO hat.

HSTS 301-Umleitung
HSTS 301-Umleitung