HSTS (HTTP Strict-Transport-Security) er en sikkerhedspolitik, hvor webserveren fortæller din browser, at en hjemmeside kun må tilgås via HTTPS.
Hvis du blot opretter en omdirigering fra HTTP til HTTPS, lander dine besøgende først på HTTP - og her kommunikerer browseren med en ukrypteret version af din hjemmeside.
Dette muliggør, at en hacker kan lave et "Man-in-the-middle"-angreb, hvor de besøgende f.eks. kan omdirigeres til en skadelig side, uden de ved det.
Selvom det er nemt at aktivere HSTS, er det vigtigt, at du ved, hvordan HSTS fungerer. Konfigureres det forkert, kan du risikere, at dit website ikke kan tilgås.
Eftersom HSTS kræver, at forbindelsen til din hjemmeside sker via HTTPS, ender du i problemer, hvis ikke din hjemmeside (eller underdomæners hjemmesider) ikke er konfigureret med et SSL-certifikat. Er det tilfældet, vil din hjemmeside ikke kunne tilgås i det antal sekunder, der er angivet i max-age.
Af ovenstående årsag er det en god idé at teste HSTS med en lav værdi for max-age først, f.eks. 3600 (1 time). Skulle noget gå galt, kan man deaktivere HSTS, hvorefter man kan tilgå hjemmesiden igen efter en time.
Preloader man ikke sit domæne, vil browsere først vide, at HSTS er aktiveret, når man første gang tilgår domænet. Man bør ikke preloade, før man er færdig med at teste.
Det kræver ikke meget at aktivere HSTS på dit domæne (og underdomæner). Du kan tilføje følgende til toppen af din hjemmesides .htaccess:
Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"
Her er en forklaring på, hvad de forskellige parametre betyder:
Strict-Transport-Security: Her fortæller vi browseren, at HSTS er angivet for domænet.
max-age: Denne værdi angiver (i sekunder), hvor lang tid browsere skal huske, at HSTS er aktivt for domænet. En værdi på 63072000 (2 år) er anbefalet.
includeSubDomains: Bestemmer, om underdomæner for domænet også skal inkluderes. Denne er valgfri.
preload: Angiv denne, hvis domænet skal preloades. Læs mere om dette nedenfor. Denne er også valgfri.
Læs følgende om aktivering af HSTS: https://hstspreload.org/#deployment-recommendations
Preloading er en måde at fortælle alle browsere, at domænet benytter sig af HSTS, inden den enkelte browser tilgår hjemmesiden.
Google vedligeholder en preloading-tjeneste kaldet HSTSPreload. Selvom tjenesten vedligeholdes af Google, understøttes den af de fleste (hvis ikke alle) browsere, såsom Mozilla Firefox, Microsoft Edge og Safari.
Når du har testet HSTS, er det anbefalet, at du preloader dit domæne.
hsts, ssl, https, Strict Transport Security