Přeskočit obsah

HSTS hlavička

HSTS je zkratka z HTTP Strict Transport Security. Pokud webserver zašle do browseru tuto hlavičku, bude browser s takovou doménou ( případně i subdoménami ) vyžadovat pouze zabezpečené HTTPS spojení.

Strict-Transport-Security "max-age=3153600; includeSubdomains; preload"
  • max-age říká, jak dlouho bude hlavička platná. Při každém načtení se hodnota aktualizuje. Hodnota v hlavičce by měla být velmi dlouhá - doporučuje se 180dní jako minimální hodnota. V ukázce máme 1 rok.
  • includeSubdomains  je parametr, který oznamuje že HTTPS má být vyžadováno na všech subdoménách. S tímto opatrně, snadno narazíte ve firmě na interní web bez HTTPS na jedné ze subdomén. Pokud se rozhodnete tento parametr nastavit, vyzkoušejte to nejdříve s velmi krátkým max-age. Jinak už nebude cesty zpět.
  • preload - existuje seznam webů, které jsou součástí browserů a HTTPS je u nich vyžadováno. Umístěním tohoto parametru dáváte najevo, že byste se na tento seznam chtěli dostat. Detaily naleznete na tomto webu.

Pokud budete přidávat hlavičku sami, je důležité vědět, že HSTS hlavičků byste neměli odesílat přes HTTP protokol. Proto pokud ji budete odesílat aplikace, tak si toto ohlídejte. Stejně tak je třeba toto ošetřit, pokud budete hlavičku přidávat pomocí .htaccess, tak parametrem env=HTTPS, tedy například takto:

Header set Strict-Transport-Security "max-age=3153600; includeSubdomains; preload" env=HTTPS