HSTS für IIS konfigurieren

Schritt-für-Schritt-Anleitung: HTTP Strict Transport Security in IIS einrichten, HTTP-zu-HTTPS-Redirect konfigurieren und Preload beantragen.

IIS · Schritt für Schritt

HSTS in IIS

HTTP Strict Transport Security (HSTS) weist Browser an, ausschließlich verschlüsselte HTTPS-Verbindungen zu verwenden. HSTS ist mit 15 von 166 Punkten ein wichtiger Faktor im Wolf-Agents Web Security Check. In IIS setzen Sie den Header per web.config customHeaders.

HSTS allein reicht nicht — Sie benötigen zusätzlich einen HTTP-zu-HTTPS-Redirect. IIS bietet dafür das URL Rewrite Module, das eingehende HTTP-Anfragen permanent auf HTTPS weiterleitet. Erst die Kombination aus HSTS-Header und Redirect schützt vollständig.

1 Schritt 1 von 3

HSTS-Header per web.config setzen

Der einfachste Weg: Setzen Sie den HSTS-Header über customHeaders in der web.config. Alternativ nutzen Sie PowerShell für automatisierte Deployments oder Windows Server Core.

web.config Produktiv
<!-- web.config — HSTS Header -->
<configuration>
  <system.webServer>
    <httpProtocol>
      <customHeaders>
        <add name="Strict-Transport-Security"
             value="max-age=31536000; includeSubDomains; preload" />
      </customHeaders>
    </httpProtocol>
  </system.webServer>
</configuration>
PowerShell Alternative
# PowerShell — HSTS Header setzen
$sitePath = 'MACHINE/WEBROOT/APPHOST/Default Web Site'
$filter = "system.webServer/httpProtocol/customHeaders"

Add-WebConfigurationProperty -pspath $sitePath \
  -filter $filter -name "." \
  -value @{
    name  = 'Strict-Transport-Security'
    value = 'max-age=31536000; includeSubDomains; preload'
  }
IIS 10 HSTS-Feature

Ab IIS 10 Version 1709 gibt es ein natives HSTS-Feature. Sie können es per IIS Manager unter Sites > [Site] > HSTS aktivieren. Die web.config-Methode funktioniert jedoch auf allen IIS-Versionen und ist portabler.

2 Schritt 2 von 3

HTTP-zu-HTTPS-Redirect einrichten

HSTS schützt nur nach dem ersten HTTPS-Besuch. Damit Benutzer, die http:// eingeben, sofort weitergeleitet werden, benötigen Sie eine URL Rewrite Rule. Diese erfordert das IIS URL Rewrite Module.

web.config URL Rewrite
<!-- web.config — HTTP zu HTTPS Redirect -->
<!-- Benötigt IIS URL Rewrite Module -->
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="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>
    </rewrite>
  </system.webServer>
</configuration>
Das URL Rewrite Module muss separat installiert werden — es ist nicht Teil der IIS-Standardinstallation. Ohne das Modul werden <rewrite>-Regeln in der web.config komplett ignoriert, ohne Fehlermeldung.
3 Schritt 3 von 3

Verifizieren und Preload beantragen

IIS lädt web.config-Änderungen automatisch. Prüfen Sie den HSTS-Header und beantragen Sie anschließend den Preload-Status.

PowerShell / Terminal Verifizieren
# HSTS-Header prüfen
curl -sI https://ihre-domain.de | Select-String "Strict-Transport"

# Erwartete Ausgabe:
# Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

# Preload beantragen: https://hstspreload.org
Preload ist quasi-permanent. Die Entfernung dauert Monate. Stellen Sie sicher, dass alle Subdomains HTTPS unterstützen und ein gültiges SSL-Zertifikat haben, bevor Sie bei hstspreload.org einreichen.

Häufige Fehler

HSTS über HTTP gesendet

web.config customHeaders senden den HSTS-Header auch über HTTP-Verbindungen. Browser ignorieren HSTS über HTTP laut RFC — aber es zeigt eine fehlerhafte Konfiguration an.

URL Rewrite Module fehlt

Ohne das URL Rewrite Module funktioniert der HTTP-zu-HTTPS-Redirect nicht. IIS gibt keinen Fehler aus — die Regel wird einfach ignoriert.

Doppelter HSTS-Header

Wenn HSTS sowohl in der web.config als auch per ASP.NET Core Middleware gesetzt wird, erscheint der Header doppelt. Entscheiden Sie sich für eine Methode.

Compliance-Relevanz

HSTS ist eine Grundvoraussetzung für sichere Websites. PCI DSS fordert die ausschließliche Nutzung starker Kryptografie — HSTS stellt sicher, dass keine unverschlüsselten Verbindungen möglich sind. Der Wolf-Agents Web Security Check prüft HSTS inklusive Preload-Status und max-age-Wert.

Wie steht Ihre Domain bei HSTS?

Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 166 Prüfpunkte.