Security Header für nginx einfügen – A+ Ranking bei webpagetest.org
Ich hatte Euch vor wenigen Tagen berichtet, wie ich technikkram, smartkram und smartfabrik auf einen eigenen Root-Server umgezogen habe. Wir verwenden dort ein Debian Linux und als Konfigurationstool für WordPress die Software Plesk. Heute will ich Euch kurz beschreiben, wie Ihr in nginx alle nötigen Security-Header implementieren könnt. Die Website Webpagetest.org hat eine zusätzliche Prüfung eingefügt, die verschiedene Security-Header abfragt. Wie Ihr diese Header auf Eurer Seite einfügt um diese gegen Angriffe zu schützen, will ich Euch kurz in diesem Beitrag zeigen.
Das Resultat der Implementierung sieht wie folgt aus – das erste Bild Zeigt den Test ohne die Security-Header. Hier bekommen wir ohne die Header ein E in der Security score.
Das zweite Bild zeigt den gleichen Test nachdem die Header eingefügt worden sind. Nun bekommen wir ein A+ für die Implementierung und unsere Seite ist ein großes Stück sicherer.
Hier eine kurze Beschreibung der Header, wie wir implementieren wollen:
Der erster Header heißt Strict-Transport-Security (HSTS). Dieser gibt dem Browser die Anweisung dass die Seite nur via https Verbindung aufgerufen werden soll. Eine unverschlüsselte http Verbindung wird so nicht genutzt.
Der X-Content-Type-Options Header verhindert, dass Sniffing und unterbindet, dass nicht ausführbare MIME-Typen in ausführbare MIME-Typen geänder werden.
Der nächste Security-Header X-Frame-Options unterbindet, dass eine Website via „click-jacking“ attackiert werden kann. Dadurch wird blockiert, dass fremde Inhalte in z.B. einem iFrame der Website angezeigt werden können.
Der nächste Header „Content Security Policy (CSP)“ ist eine zusätzliche Sicherheitsebene für Malware Angriffe auf eine Website.
Der nächste Header heißt HTTP X-XSS-Protection resonse header. Dieser Header verhindert, das Laden von XSS-Angriffen.
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
Strict-Transport-Security: max-age=10886400; includeSubDomains
Content-Security-Policy: policy
X-XSS-Protection: 1; mode=block
Die Header müssen als zusätzliche Header in nginx eingefügt werden. Bei einer Plesk Oberfläche kann dies direkt in den nginx-Einstellungen vorgenommen werden.
Mit den 5 Security Headern könnt Ihr Eure Website gegen gängige Angriffe schützen. Die Einbindung ist in wenigen Minuten umgesetzt.
Hinterlasse einen Kommentar
An der Diskussion beteiligen?Hinterlasse uns deinen Kommentar!