Sicherheitsheader sind ein wichtiger Bestandteil der Absicherung von Webanwendungen. Sie steuern, wie Browser Inhalte verarbeiten, verhindern Angriffe wie Clickjacking, Cross-Site-Scripting (XSS) und erzwingen verschlüsselte Verbindungen. In diesem Leitfaden erfahren Einsteiger, IT-Studierende und Junior Network Engineers, wie HSTS, Content Security Policy (CSP) und X-Frame-Options korrekt gesetzt werden, um Webserver wie Nginx und Apache abzusichern.
HTTP Strict Transport Security (HSTS)
HSTS sorgt dafür, dass Browser automatisch HTTPS nutzen, auch wenn eine HTTP-URL eingegeben wird. Dadurch wird Man-in-the-Middle-Angriffen vorgebeugt.
HSTS Header Syntax
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
- max-age: Dauer in Sekunden, wie lange der Browser HTTPS erzwingt (z.B. 1 Jahr = 31536000)
- includeSubDomains: Optional, erzwingt HTTPS auch für alle Subdomains
- preload: Optional, fügt die Domain in die HSTS-Preload-Liste der Browser ein
Apache Konfiguration
sudo nano /etc/apache2/sites-available/meinewebsite.conf
<VirtualHost *:443> ServerName meinewebsite.de DocumentRoot /var/www/htmlHeader always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"Nginx Konfiguration
server { listen 443 ssl; server_name meinewebsite.de www.meinewebsite.de;root /var/www/html;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;}
Content Security Policy (CSP)
CSP schützt vor XSS-Angriffen, indem es festlegt, welche Quellen für Skripte, Styles, Bilder und andere Inhalte erlaubt sind.
Grundsyntax
Content-Security-Policy: default-src 'self'; script-src 'self' https://apis.google.com; style-src 'self' 'unsafe-inline'; img-src 'self' data:;
- default-src: Standardquellen für Inhalte
- script-src: erlaubte Skriptquellen
- style-src: erlaubte Stylesheets
- img-src: erlaubte Bildquellen
Apache Konfiguration
Header always set Content-Security-Policy "default-src 'self'; script-src 'self' https://apis.google.com; style-src 'self' 'unsafe-inline'; img-src 'self' data:;"
Nginx Konfiguration
add_header Content-Security-Policy "default-src 'self'; script-src 'self' https://apis.google.com; style-src 'self' 'unsafe-inline'; img-src 'self' data:;" always;
X-Frame-Options
Der Header X-Frame-Options verhindert, dass eine Website in einem Frame, IFrame oder Objekt von einer anderen Domain eingebettet wird. Dies schützt vor Clickjacking.
Optionen
- DENY: Kein Einbetten erlaubt
- SAMEORIGIN: Nur die gleiche Domain darf einbetten
- ALLOW-FROM uri: Bestimmte Domains erlauben
Apache Konfiguration
Header always set X-Frame-Options "SAMEORIGIN"
Nginx Konfiguration
add_header X-Frame-Options "SAMEORIGIN" always;
Weitere Sicherheitsheader
Zusätzlich können weitere Header gesetzt werden, um die Sicherheit weiter zu erhöhen.
- X-Content-Type-Options: Verhindert MIME-Sniffing, Beispiel:
add_header X-Content-Type-Options "nosniff" always; - Referrer-Policy: Kontrolliert, welche Referrer-Informationen gesendet werden, Beispiel:
add_header Referrer-Policy "no-referrer-when-downgrade" always; - Feature-Policy / Permissions-Policy: Regelt den Zugriff auf Browser-Features, Beispiel:
add_header Permissions-Policy "geolocation=(), microphone=()" always;
Testing und Monitoring
Nach dem Setzen der Sicherheitsheader sollte die Konfiguration getestet und überwacht werden, um die Wirksamkeit sicherzustellen.
Header prüfen
curl -I https://meinewebsite.de
Online Tools
- https://securityheaders.com/
- https://observatory.mozilla.org/
Best Practices
- Alle Header in der HTTPS-Konfiguration setzen
- Subdomains über HSTS einbeziehen
- CSP schrittweise testen, um bestehende Skripte nicht zu blockieren
- Regelmäßig Konfiguration überprüfen und an neue Sicherheitsanforderungen anpassen
- Logs überwachen, um Sicherheitsverletzungen frühzeitig zu erkennen
Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3
Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.
Meine Leistungen umfassen:
-
Professionelle Konfiguration von Routern und Switches
-
Einrichtung von VLANs, Trunks, Routing, DHCP, NAT, ACLs und weiteren Netzwerkfunktionen
-
Erstellung von Topologien und Simulationen in Cisco Packet Tracer
-
Aufbau, Analyse und Fehlerbehebung von Netzwerk-Labs in GNS3 und EVE-NG
-
Automatisierung von Netzwerkkonfigurationen mit Python, Netmiko, Paramiko, NAPALM und Ansible
-
Erstellung von Skripten für wiederkehrende Netzwerkaufgaben
-
Dokumentation der Konfigurationen und Bereitstellung nachvollziehbarer Lösungswege
-
Konfigurations-Backups, Optimierung bestehender Setups und technisches Troubleshooting
Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.

