Uživatelské nástroje

Nástroje pro tento web


iis:hsts

Toto je starší verze dokumentu!


Konfigurace HSTS na IIS

HTTP Strict Transport Security (HSTS) je vlastnost webové stránky sdělit prohlížeči, že má se serverem komunikovat pouze přes zabezpečený protokol HTTPS a nikdy pomocí nezabezpečeného HTTP. Tímto nastavením je řešena zejména situace, kdy je uživatel přesměrováván z protokolu HTTP na zabezpečený HTTPS a právě v tomto okamžiku může být útočníkem přesměrován na stránku s podvrženýnm obsahem. HSTS je realizována HTTP záhlavím, které prohlížeči říká, že má používat pouze HTTPS a jak dlouho. Společně s HSTS je tedy nutné nastavit také přesměrování HTTP požadavku na HTTPS.
Konfiguraci je možné provést dvěma způsoby:

Úpravou souboru web.config

Na IIS v. 7+ je nutné mít nainstalovaný modul URL Rewrite a do souboru web.config dopsat příslušnou část níže uvedené konfigurace. Tato konfigurace zajistí jak odesílání potřebných HTTP záhlaví, tak přesměrování HTTP požadavků na HTTPS.

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
     <system.webServer>
          <rewrite>
              <rules>
                  <rule name="HTTP to HTTPS redirect" stopProcessing="true">
                      <match url="(.*)" />
                      <conditions>
                          <add input="{HTTPS}" pattern="off" ignoreCase="true" />
                      </conditions>
                      <action type="Redirect" url="https://{HTTP_HOST}/{R:1}"
                          redirectType="Permanent" />
                  </rule>
              </rules>
              <outboundRules>
                  <rule name="Add Strict-Transport-Security when HTTPS" enabled="true">
                      <match serverVariable="RESPONSE_Strict_Transport_Security"
                          pattern=".*" />
                      <conditions>
                          <add input="{HTTPS}" pattern="on" ignoreCase="true" />
                      </conditions>
                      <action type="Rewrite" value="max-age=63072000; includeSubDomains; preload" />
                  </rule>
              </outboundRules>
          </rewrite>
     </system.webServer>
</configuration>

Nastavení pomocí GUI

IIS v. 7/8

Implementace HSTS na IIS v. 7/8 se realizuje přidáním specifických záhlaví:

  • Spusťte správce služby IIS.
  • Vyberte svůj web
  • Vyberte HTTP Response Headers
  • V části Actions klikněte na Add
  • V dialogu Add Custom HTTP Response Header přidejte následující hodnoty:
    • Jméno: Strict-Transport-Security
    • Hodnota: max-age=15552001; includeSubDomains; preload

HSTS musí být nastaveno pouze pro HTTPS, nesmí být nastaveno pro HTTP. V tomto scénáři je tedy nutné nastavit v IIS pro oba protokoly dva samostatné weby a na druhém z nich nastavit přesměrování HTTP požadavků na HTTPS.

iis/hsts.1579682828.txt.gz · Poslední úprava: 22.01.2020 08:47 autor: Ladislav Vojtíšek

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki