SSL alleine reicht nicht — moderne Browser erwarten zusätzliche Security-Header, um Angriffe zu erkennen und zu blockieren. Die fünf wichtigsten in fünf Minuten eingerichtet.
Wo trage ich Header ein?
In einer .htaccess im Webspace-Root, oder im Apache-VHost. Die folgenden Beispiele sind für .htaccess-Nutzung formatiert.
HSTS — HTTPS erzwingen
Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"
Sagt Browsern: Auf dieser Domain (und allen Subdomains) NUR HTTPS, für die nächsten zwei Jahre. Verhindert Downgrade-Angriffe. Vorsicht: erst aktivieren, wenn HTTPS auf wirklich allen Subdomains läuft — sonst sperrt es Besucher aus.
Clickjacking-Schutz
Header always set X-Frame-Options "SAMEORIGIN"
Verhindert, dass deine Seite in einem <iframe> auf fremden Domains eingebunden wird.
Mime-Sniffing abschalten
Header always set X-Content-Type-Options "nosniff"
Browser respektieren dann den Content-Type-Header und versuchen nicht zu erraten, ob eine .txt-Datei eigentlich HTML sein könnte.
Referrer-Policy
Header always set Referrer-Policy "strict-origin-when-cross-origin"
Beim Klick auf externe Links wird nur die Origin (Domain) übergeben, nicht der volle Pfad. Schützt Privatsphäre und sensible URL-Parameter.
Content-Security-Policy (Fortgeschritten)
Header always set Content-Security-Policy "default-src 'self'; img-src 'self' data:; style-src 'self' 'unsafe-inline'"
CSP ist mächtig, aber heikel — eine zu strikte Policy bricht externe Scripts, Fonts oder Tracking. Empfehlung: erstmal im Report-Only-Modus testen:
Header always set Content-Security-Policy-Report-Only "default-src 'self'"
Testen
securityheaders.com gibt dir eine Note von A+ bis F und zeigt fehlende Header an. Mit den oben genannten Einstellungen landest du bei einem soliden A.
