Was ist HSTS und wie aktiviert man es? (HTTP Strict Transport Security)
HSTS (HTTP Strict Transport Security) ist ein Sicherheits-Header, der dem Browser sagt: "Verbinde dich nur über HTTPS mit mir". Zusammen mit einer 301-Weiterleitung verhindert er, dass selbst die erste http://-Anfrage an Ihre Seite abgefangen wird (SSL-Stripping).
Warum wird HSTS benötigt?
Bei einer reinen 301-Weiterleitung erreicht der Browser des Besuchers die Seite zuerst über http:// und wird dann zu HTTPS umgeleitet. Diese kurze erste Anfrage ist ein offenes Fenster für einen Angreifer im Netzwerk. Mit aktivem HSTS wandelt der Browser die Anfrage direkt in HTTPS um, ohne sie überhaupt zu senden, selbst wenn http in der Adressleiste steht.
Aufbau des Headers
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload- max-age — wie viele Sekunden der Browser diese Regel merkt (31536000 = 1 Jahr).
- includeSubDomains — wendet die Regel auch auf alle Subdomains an.
- preload — eine Anfrage, Ihre Seite in die im Browser eingebaute "Nur-HTTPS"-Liste aufzunehmen (siehe Hinweis unten).
Aktivierung in Nginx
Fügen Sie es Ihrem HTTPS-server-Block hinzu:
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;Aktivierung in Apache
Mit aktiviertem mod_headers in den virtuellen Host oder die .htaccess:
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"Worauf Sie achten sollten
- Stellen Sie zuerst sicher, dass HTTPS vollständig funktioniert. Bei aktivem HSTS wird der HTTP-Zugriff browserseitig komplett blockiert; ist Ihr Zertifikat defekt, können Besucher die Seite nicht erreichen.
- Beginnen Sie mit einem niedrigen max-age. Verwenden Sie zuerst
max-age=300(5 Minuten) und erhöhen Sie es auf 1 Jahr, sobald alles läuft. - Übereilen Sie preload nicht. Die Aufnahme in die Preload-Liste ist dauerhaft und die Entfernung dauert Wochen; fügen Sie es erst hinzu, wenn alle Subdomains dauerhaft auf HTTPS bleiben.
Zusammenfassung
HSTS macht Ihr HTTPS mit einem einzeiligen Header verbindlich und schließt die Erst-Anfrage-Lücke. Stellen Sie zuerst sicher, dass Ihr Zertifikat einwandfrei funktioniert; ohne Zertifikat erstellen Sie eines mit unserem kostenlosen SSL-Assistenten und aktivieren dann HSTS mit niedrigem max-age.