Skoč do Security Headers po hlavě
Návod pro "střelce", jak nasadit Security Headers na svůj web a získat A++ hodnocení.
Pokud patříte k lidem, kteří se řídí heslem "Skoč do toho po hlavě a podstatné řeš až na místě.", přinášíme kód, který stačí nakopírovat do souboru .htaccess a při troše štěstí budou webové stránky stále fungovat a vy získáte ve dvou testech skvělé hodnocení A+ :))
Předpoklady:
- linuxový webhosting
- nasazený SSL certifikát pro HTTPS komunikaci (např. Let's Encrypt)
- možnost editace souboru .htaccess
- chuť testovat
Může být však využit pro inspiraci k nasazení Security Headers na web.
Vzorový kód pro soubor .htaccess
Pokud se nechcete zabývat problematikou bezpečnostních hlaviček, dáváme k dispozici kód, který vložte do souboru .htaccess na webhostingu/serveru. Připravený kód obsahuje základní bezpečnostní hlavičky se standardním nastavením, které by mělo být funkční na běžném linuxovém hostingu. Kód vložte na konec souboru.
Doporučujeme alespoň minimální seznámení se Secrity Headers z našeho článku 5 hlaviček co musíte mít na webu, kde je základní přehled doporučených HTTP bezpečnostních hlaviček pro webové stránky.
# Projekt https://SecurityHeaders.cz # Ukázkový zápis nastavení Security Headers souboru .htaccess # Použití hlaviček může způsobit nefunkčnost webu a je prováděno na vlastní riziko Header set X-XSS-Protection "1; mode=block" Header set X-Content-Type-Options nosniff Header set X-Download-Options: noopen # X-Frame-Options settings Header set X-Frame-Options DENY # Referrer-Policy settings Header set Referrer-Policy "strict-origin-when-cross-origin" # HSTS Header set Strict-Transport-Security "max-age=31536000; includeSubdomains" # Feature-Policy Header set Feature-Policy "microphone 'none';" # CSP settings Header set Content-Security-Policy: "upgrade-insecure-requests; frame-ancestors 'none';"
Pro první testování doporučíme nastavit nižší hodnotu času HSTS max-age=300
.
Test 1. na securityheaders.com
Projekt securityheaders.com provozuje @Scott_Helme, UK (hacker, researcher, builder of things, founder @securityheaders and @reporturi, Pluralsight author, BBC hacker in residence, award winning entrepreneur).
Test 2. na ssllabs.com
Test Qualys SSL Labs na adrese ssllabs.com/ssltest kompletně prověří a posoudí úroveň nastavení serveru a zabezpečení SSL certifikátu. Výstupem je detailní výpis vlastností serveru a SSL certifikátu, včetně typů pro řešení problémových výsledků.
Závěr
Cílem tohoto návodu není ukázat, jak lze "lehce" získat ohodnocení A++, ale ukázat, že nastavení Security Headers a posílení bezpečnosti aplikace a webu nemusí být zase tak složité. Speciálně u běžných, jednoduchých webových stránek.