HSTS prüfen

HSTS prüfen leicht gemacht: Fügen Sie den Strict-Transport-Security-Header ein, und das Werkzeug zerlegt die Direktiven, rechnet max-age um und zeigt, was für HSTS Preload noch fehlt.

Preload-Checkliste (nur Sie können diese Punkte prüfen):




–

 

    Empfohlener Header
    Strict-Transport-Security

    Alles läuft in Ihrem Browser. Eingaben verlassen Ihr Gerät nicht.

    HSTS, includeSubDomains und Preload

    Mit diesem Werkzeug HSTS prüfen Sie den Header Strict-Transport-Security, mit dem eine Website dem Browser sagt: Diese Adresse ab sofort nur noch über HTTPS aufrufen. Der Prüfer zerlegt die Direktiven, rechnet max-age in Tage und Jahre um und meldet Fehler, die den HSTS-Header unwirksam machen, etwa doppelte Direktiven, fehlendes max-age oder Werte mit Einheiten. Nach RFC 6797 ignoriert der Browser den Header in HTTP-Antworten vollständig; er zählt nur, wenn er über eine fehlerfreie HTTPS-Verbindung kommt.

    includeSubDomains dehnt den Schutz auf alle Subdomains aus. Das verhindert, dass ein Angreifer über eine vergessene HTTP-Subdomain Cookies der Hauptdomain abgreift, setzt aber voraus, dass wirklich jede Subdomain HTTPS beherrscht. HSTS Preload geht einen Schritt weiter: Die Domain wird fest in die Browser eingebaut, sodass schon der allererste Aufruf über HTTPS läuft. Für die Aufnahme über hstspreload.org verlangt die Liste max-age von mindestens 31536000 Sekunden (ein Jahr), includeSubDomains, die Direktive preload, eine Weiterleitung von HTTP auf HTTPS desselben Hosts und den Header auf der Hauptdomain.

    Führen Sie HSTS schrittweise ein: zuerst wenige Minuten, dann eine Woche, einen Monat, schließlich ein bis zwei Jahre. Eine Aufnahme in die Preload-Liste lässt sich nur langsam rückgängig machen, weil die Liste mit Browser-Updates verteilt wird. Zurücknehmen können Sie HSTS mit max-age=0, aber nur bei Browsern, die die Seite danach noch einmal per HTTPS besuchen. Die Weiterleitung auf HTTPS erstellen Sie mit dem htaccess-Redirect-Generator, weitere Header prüfen Sie mit dem Sicherheits-Header-Prüfer.

    Anleitung: HSTS prüfen in 4 Schritten

    1. Den Header Strict-Transport-Security aus den Antwort-Headern Ihrer Website in das Feld „HSTS-Header“ einfügen.
    2. Optional die Domain eintragen, für die der Header gilt.
    3. Die Punkte der Preload-Checkliste abhaken, die auf Ihre Website zutreffen.
    4. Unter „Empfohlener Header“ die Laufzeit wählen und den fertigen Header oder die Zeile für nginx, Apache oder Caddy kopieren.

    Typische Anwendungsfälle

    • Vor dem Antrag auf hstspreload.org prüfen, ob Header und Weiterleitungen die Bedingungen erfüllen.
    • HSTS schrittweise einführen: erst kurze Laufzeit, dann ein Jahr oder länger.
    • Einen Prüfbericht nachvollziehen, der „HSTS fehlt“ oder „max-age zu kurz“ meldet.
    • HSTS gezielt zurücknehmen, indem man max-age=0 ausliefert.
    Fragen

    Häufige Fragen

    Welcher max-age-Wert ist sinnvoll?

    Für den Dauerbetrieb ein Jahr (31536000) oder zwei Jahre (63072000). Für die Preload-Liste ist mindestens ein Jahr Pflicht. Zum Testen beginnt man mit wenigen Minuten und erhöht schrittweise.

    Warum ignoriert der Browser meinen HSTS-Header?

    Häufige Ursachen: Der Header kommt nur über HTTP, das Zertifikat hat Fehler, eine Direktive steht doppelt, max-age fehlt oder enthält keine reine Zahl. Bei mehreren Strict-Transport-Security-Headern wertet der Browser nur den ersten aus.

    Wie entferne ich eine Domain wieder von der Preload-Liste?

    Über das Entfernungsformular auf hstspreload.org; vorher muss die Direktive preload aus dem Header verschwinden. Bis die Änderung in allen Browsern angekommen ist, können Monate vergehen.

    Ersetzt HSTS die Weiterleitung von HTTP auf HTTPS?

    Nein. Erstbesucher ohne Preload kommen weiterhin zuerst per HTTP und brauchen die Weiterleitung. HSTS sorgt dafür, dass der Browser bei späteren Besuchen gar nicht mehr per HTTP anfragt.

    Gilt HSTS auch für Subdomains, die ich nicht kenne?

    Mit includeSubDomains ja: Der Browser erzwingt HTTPS für alle Subdomains unter dem Host, der den Header gesendet hat, auch für interne oder alte. Prüfen Sie vorher, ob wirklich jede Subdomain HTTPS kann.

    Wie prüfe ich den Header mit curl?

    Mit curl -sI https://www.example.de/ sehen Sie die Antwort-Header. Die Zeile Strict-Transport-Security muss in der HTTPS-Antwort stehen; in einer reinen HTTP-Antwort wird sie vom Browser ignoriert.

    Weitere Werkzeuge

    Das könnte auch helfen

    Alle 558 Werkzeuge