HTTP-Security-Header in Plesk konfigurieren
Plesk bietet die Möglichkeit, zusätzliche HTTP-Header in allen HTTP-Antworten zu ergänzen. Diese Option sollte nur dann verwendet werden, sofern die eingesetzte Web-Applikation diese noch selbstständig bereitstellen kann.
Konfiguration
Melden Sie sich im Plesk Control Panel über unser Kundencenter unter account.creoline.com an. Navigieren Sie anschließend zu der Webseite, für die Sie zusätzliche HTTP-Header bereitstellen möchten und klicken Sie in der Registerkarte Hosting auf Apache & NGINX. Ergänzen Sie im letzten Abschnitt bei "Zusätzliche nginx Anweisungen" die gewünschten Header nach folgendem Schema:
add_header <Name des Headers> <Wert>;
Wichtige HTTP-Header
Im Folgenden fassen wir einige wichtige HTTP-Security-Header zusammen:
Strict-Transport-Security (HSTS)
Dieser Header erzwingt die Nutzung von HTTPS, indem er dem Browser mitteilt, dass die Webseite nur über eine sichere Verbindung aufgerufen werden darf. Dadurch wird verhindert, dass ein Benutzer versehentlich über eine unsichere HTTP-Verbindung kommuniziert.
Beispiel:
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Referrer-Policy
Dieser Header bestimmt, welche Informationen im Referer
-Header an die Zielseite gesendet werden, wenn ein Nutzer von einer Seite zur anderen navigiert. Dadurch lässt sich die Preisgabe sensibler Informationen über die Herkunft der Anfragen steuern.
Beispiel:
Referrer-Policy: no-referrer
Content-Security-Policy
Dieser Header schützt vor Cross-Site Scripting (XSS) und anderen Code-Injection-Angriffen, indem er festlegt, welche Ressourcen (z. B. Skripte, Styles) von einer Webseite geladen werden dürfen. Durch eine restriktive Konfiguration können schädliche Inhalte blockiert werden.
Beispiel:
Content-Security-Policy: default-src 'self'; script-src 'self' https://trusted.com
Permissions-Policy
Mit diesem Header kann eine Website festlegen, welche APIs und Funktionen (z. B. Kamera, Mikrofon, Geolocation) durch den Browser verwendet werden dürfen. So kann der Zugriff auf potenziell missbrauchbare Schnittstellen eingeschränkt werden.
Beispiel:
Permissions-Policy: geolocation=(), microphone=()
X-Frame-Options
Dieser Header verhindert Clickjacking-Angriffe, indem er steuert, ob eine Webseite innerhalb eines <iframe>
eingebettet werden darf. Damit kann verhindert werden, dass bösartige Seiten Inhalte einer anderen Webseite überlagern.
Beispiel:
X-Frame-Options: DENY
X-Content-Type-Options
Mit diesem Header kann der Browser angewiesen werden, den Content-Type
einer Datei strikt gemäß der Serverangabe zu interpretieren. Dadurch wird das sogenannte MIME-Sniffing verhindert, das in manchen Fällen zu Sicherheitslücken führen kann.
Beispiel:
X-Content-Type-Options: nosniff
Beispiel Konfiguration "WordPress"
# Referrer-Policy: Steuert, welche Referrer-Informationen gesendet werden
add_header Referrer-Policy "no-referrer-when-downgrade";
# Content-Security-Policy: Beschränkt das Laden von externen Ressourcen
add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' https://trusted-cdn.com; style-src 'self' 'unsafe-inline'; img-src 'self' data:; font-src 'self' data:; frame-ancestors 'none';";
# Permissions-Policy: Beschränkt den Zugriff auf bestimmte APIs
add_header Permissions-Policy "geolocation=(), microphone=(), camera=(), interest-cohort=()";
# X-Frame-Options: Verhindert Clickjacking
add_header X-Frame-Options "SAMEORIGIN";
# X-Content-Type-Options: Verhindert MIME-Sniffing
add_header X-Content-Type-Options "nosniff";
Bitte beachten Sie, dass für Ihren WordPress-Internetauftritt möglicherweise Anpassungen an der Beispiel-Konfiguration erforderlich sind.