Vorhaben besprechen

TOOLBOX · WERKZEUG

SECURITY-HEADERERZEUGEN.

Schutz-Header auswählen, Warnungen lesen und die fertige Konfiguration für Ihren Server kopieren. Läuft nur in Ihrem Browser.

HSTS (Strict-Transport-Security)

Zwingt Browser, Ihre Domain nur noch über HTTPS aufzurufen. Erst setzen, wenn HTTPS mit gültigem Zertifikat läuft.

Clickjacking-Schutz

Legt fest, ob fremde Websites Ihre Seiten in einem Frame anzeigen dürfen.

Inhalte und Weitergabe
Permissions-Policy

Gesperrte Funktionen kann weder Ihre Seite noch ein eingebetteter Inhalt anfragen. Nur sperren, was Ihre Website nicht braucht.

Cross-Origin-Isolation

Trennt Ihre Seite von fremden Fenstern und Einbindungen. CORP und COEP haben Nebenwirkungen – Hinweise unten lesen.

Content-Security-Policy

Optional: Ihre Richtlinie, z. B. aus dem CSP-Generator. frame-ancestors wird ergänzt, wenn es fehlt.

Ihre Header

Strict-Transport-Security
max-age=31536000
Content-Security-Policy
frame-ancestors 'self'
X-Frame-Options
SAMEORIGIN
X-Content-Type-Options
nosniff
Referrer-Policy
strict-origin-when-cross-origin
Permissions-Policy
camera=(), microphone=(), geolocation=(), payment=(), usb=(), browsing-topics=()
Cross-Origin-Opener-Policy
same-origin-allow-popups
  • Hinweis: Ohne eigene Content-Security-Policy fehlt der wichtigste Schutz gegen Cross-Site-Scripting. Eine CSP muss zu Ihren Skripten passen: Erstellen Sie sie eigens, testen Sie sie zuerst als Report-Only und fügen Sie sie dann im Feld „Content-Security-Policy“ ein.

Konfiguration

Server oder Plattform
security-header.nginx.conf
# nginx: in den server-Block (oder location-Block)
# always: auch bei Fehlerseiten und Weiterleitungen senden
add_header Strict-Transport-Security "max-age=31536000" always;
add_header Content-Security-Policy "frame-ancestors 'self'" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Permissions-Policy "camera=(), microphone=(), geolocation=(), payment=(), usb=(), browsing-topics=()" always;
add_header Cross-Origin-Opener-Policy "same-origin-allow-popups" always;

# Versionsangaben ausblenden
server_tokens off;
fastcgi_hide_header X-Powered-By;   # bei PHP-FPM
proxy_hide_header X-Powered-By;     # bei Reverse Proxy
  • Die Content-Security-Policy enthält nur frame-ancestors. Setzt Ihre Website schon eine CSP, gelten beide nebeneinander; besser frame-ancestors in die vorhandene Richtlinie übernehmen (Feld „Content-Security-Policy“ oben).
  • add_header in einem location-Block hebt alle geerbten add_header-Zeilen auf (nginx-Dokumentation). Die Zeilen deshalb in jeden Block mit eigenen add_header-Zeilen übernehmen.
  • server_tokens off entfernt die Versionsnummer, nicht das Wort nginx. X-Powered-By setzt meist die Anwendung dahinter (PHP-FPM, Proxy); passend zu Ihrem Aufbau eine der beiden hide_header-Zeilen nutzen.

Rein im Browser: Dieses Werkzeug sendet nichts an TOMORIS oder Dritte. Nach dem Einspielen mit dem Security-Header-Check prüfen.

FRAGEN

Gut zu wissen.

Wird meine Auswahl an TOMORIS übertragen?

Nein. Der Generator läuft vollständig in Ihrem Browser. Die Seite sendet Ihre Auswahl nirgendwohin und speichert sie nicht.

Welche Note erreiche ich mit der Empfehlung?

Mit der voreingestellten Auswahl, einer passenden Content-Security-Policy, gültigem Zertifikat und dauerhafter Umleitung von HTTP auf HTTPS ergibt der Security-Header-Check die Note A+. Das prüfen wir bei jeder Änderung automatisch. Ohne eigene CSP bleibt es bei A, weil der wichtigste Schutz gegen Cross-Site-Scripting fehlt.

Warum erzeugt der Generator keine vollständige CSP?

Eine Content-Security-Policy muss zu den Skripten, Schriften und Diensten Ihrer Website passen. Eine pauschale Richtlinie blockiert schnell eigene Inhalte. Fügen Sie Ihre getestete Richtlinie ein; der Generator ergänzt dann den Clickjacking-Schutz frame-ancestors.

Sollte ich HSTS mit preload setzen?

Nur wenn alle Subdomains dauerhaft über HTTPS erreichbar sind. Die Aufnahme in die Preload-Liste der Browser lässt sich laut hstspreload.org kaum rückgängig machen; eine Entfernung braucht Monate. Führen Sie HSTS am besten in Stufen ein: wenige Minuten, eine Woche, einen Monat, dann ein Jahr.

Warum sind CORP und COEP nicht vorausgewählt?

Beide schränken ein, wer Ihre Dateien einbinden darf bzw. was Ihre Seite von anderen laden darf. Das bricht leicht eingebettete Karten, Videos, Schriften oder Bilder auf anderen Websites. COEP brauchen Sie nur für Cross-Origin-Isolation, etwa für SharedArrayBuffer.

IHR NÄCHSTER SCHRITT

Ergebnis da.
Und jetzt?

Wir ordnen Befunde ein, priorisieren nach Risiko und setzen auf Wunsch um: einmalig mit EXPERTS oder laufend im Betrieb mit GRID.