Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
GILT FÜR:2016
2019
Subscription Edition
Übersicht
HTTP Strict Transport Security (HSTS) ist ein weit verbreiteter Standard , mit dem Websitebesucher geschützt werden, indem sichergestellt wird, dass ihr Browser immer eine HTTPS-Verbindung verwendet. HSTS sendet einen speziellen HTTP-Antwortheader vom Server an den Browser ( Strict-Transport-Security
STS). Dieser Header enthält eine max-age
-Direktive, die die Dauer (in Sekunden) angibt, sodass der Browser daran denken sollte, dass nur über HTTPS auf die Website zugegriffen werden kann. Sobald ein Browser diesen Header empfängt, ändert er automatisch alle HTTP-Anforderungen, um auf die Website auf HTTPS-Anforderungen zuzugreifen.
HSTS bietet nicht nur Schutz vor gängigen Angriffsszenarien, es hilft auch, die allgemeine (und jetzt unsichere) Praxis der Umleitung von Benutzern von einer HTTP-URL zu einer HTTPS-URL zu beseitigen. HSTS kann auch zur Abwehr aktiver und passiver Netzwerkangriffe verwendet werden. HSTS behebt jedoch keine Sicherheitsrisiken für Schadsoftware, Phishing oder Browser.
Funktionsweise von HSTS
Der Browser wird angewiesen, HSTS zu erzwingen, wenn er den Strict-Transport-Security
Header über eine HTTPS-Verbindung empfängt. Es gibt jedoch einige Anforderungen, die erfüllt sein müssen, bevor der Browser HSTS erzwingt. Insbesondere das Zertifikat, das zum Verschlüsseln der Sitzung verwendet wird:
- Muss gültig und vom Client vertrauenswürdig sein;
- Darf nicht abgelaufen sein; und
- Muss die Domäne oder Unterdomäne enthalten, die im Browser aufgerufen wurde.
Allgemeine Empfehlungen finden Sie unter Sicheres Surfen im Web mit Microsoft Edge .
Sobald der Browser erkennt, dass eine Domäne HSTS aktiviert hat, gilt Folgendes:
- Verwenden Sie immer eine
https://
Verbindung, z. B. wenn Sie auf einenhttp://
Link klicken oder nachdem Sie eine URL in die Adressleiste eingegeben haben, ohne ein Protokoll anzugeben. - Entfernt die Möglichkeit für Benutzer, warnungen zu durchklicken (z. B. abgelaufene oder ungültige Zertifikate, Namenskonflikte usw.).
Es gibt einige Szenarien (z. B. benutzer hat einen neuen Computer, ein neues Profil, einen neuen Browser oder hat Browserdaten und -einstellungen gelöscht), in denen ein Benutzer für einen kurzen Zeitraum anfällig ist, da er die Website zum ersten Mal besucht, ohne dass HSTS erzwungen wird. Um diese Szenarien zu beheben, verwaltet das Chromium-Projekt ein HSTS Preload List
(das auch von anderen Browsern wie Microsoft Edge und Mozilla Firefox verwendet wird). Erzwingt Preload List
HSTS auch beim erstmaligen Besuch einer Website.
Sie können Ihre Domäne an die HSTS-Liste übermitteln. Der Webserver (oder in unserem Fall Ihr Exchange-Server) muss die preload
Direktive auch als Teil des Strict-Transport-Security
Headers senden, um zu signalisieren, dass das HSTS-Vorabladen vom Browser ausgeführt werden soll.
Behandeln von HTTP-Verbindungen durch Exchange Server
Standardmäßig leitet Exchange Server HTTP-Datenverkehr nicht an HTTPS um, da die Standardwebsite SSL erfordert. Weitere Informationen finden Sie unter Standardeinstellungen für virtuelle Exchange-Verzeichnisse .
Es ist jedoch möglich, eine automatische Umleitung von HTTP zu HTTPS zu konfigurieren, indem Sie die Schritte unter Konfigurieren der Umleitung von HTTP zu HTTPS für Outlook im Web in Exchange Server ausführen. Daher akzeptiert Exchange Server Verbindungen, die über HTTP hergestellt werden, und antwortet mit einem HTTP 302 redirect
.
HSTS kann dazu beitragen, die Anzahl unsicherer HTTP-zu-HTTPS-Umleitungen erheblich zu reduzieren, da das Umschreiben zu HTTPS vom Browser selbst und nicht mehr vom Server als Teil einer HTTP 302 redirect
Antwort ausgeführt wird. Die Verwendung von HSTS kann auch zu Leistungsverbesserungen führen, obwohl dies nicht der primäre Zweck ist.
Unabhängig von der Standardkonfiguration (die keine unverschlüsselten Verbindungen zulässt) empfiehlt es sich, den Strict-Transport-Security
Header als Teil des Antwortheaders bereitzustellen.
Aktivieren von HSTS auf Exchange Server
Der STS-Header kann unter Exchange Server 2019 und Exchange Server 2016 konfiguriert werden, obwohl die Art und Weise, wie Sie jede Version konfigurieren, unterschiedlich ist.
Wichtig
HSTS darf nur auf der Default Web Site
konfiguriert werden, da dies der Endpunkt ist, mit dem Clients eine Verbindung herstellen. HSTS darf nicht für Exchange Back End
konfiguriert werden. Sie sollten auch erwägen, HSTS über den Antwortheader auf Geräten zu konfigurieren, die vor einem Exchange-Server über Schicht 7 betrieben werden (z. B. Lastenausgleichsmodule oder Reverseproxys).
Es empfiehlt sich, mit einer max-age
Konfiguration von 300 (Sekunden) zu beginnen, d. h. fünf Minuten. Nachdem die Änderung vorgenommen wurde, sollten Sie die Clientkonnektivität mit dem Exchange-Server genau überwachen und bei Auftreten eines Problems ein Rollback für die Änderung ausführen.
Aktualisieren Sie auf einen max-age
Wert von einer Woche (604800
) oder einem Monat (2592000
), und warten Sie die gesamte max-age
Phase, bevor Sie fortfahren. Ein max-age
Wert von einem Jahr (31536000
) sollte aus Sicherheitssicht mindestens festgelegt werden und ist auch mindestens erforderlich, wenn Sie planen, Ihre Domäne dem HSTS Preload List
hinzuzufügen. Das Festlegen des Werts max-age
auf einen Wert von zwei Jahren (63072000
) wird empfohlen.
Hinweis
In den folgenden Beispielen wird der max-age
Wert auf 300 Sekunden festgelegt. Dies ist eine Konfiguration, die nur zum Überprüfen der Funktionalität verwendet werden sollte. Stellen Sie sicher, dass Sie den Attributwert auf einen höheren Wert anpassen, wenn Sie bereit sind, die Konfiguration in die Produktion zu bringen.
Exchange Server 2019
Um Exchange Server 2019 für das Senden des Strict-Transport-Security
Headers zu konfigurieren, können Sie die Windows PowerShell oder die IIS-Manager-Benutzeroberfläche verwenden. Im folgenden Abschnitt werden beide Methoden beschrieben. Die HSTS-Konfiguration ist eine serverspezifische Konfiguration und muss daher auf jedem Exchange-Server ausgeführt werden.
HSTS-Konfiguration über PowerShell
Führen Sie die folgenden Befehle in einem PowerShell-Fenster mit erhöhten Rechten aus, um HSTS zu konfigurieren und zu aktivieren:
Hinweis
Um einen höheren max-age
Wert für Exchange Server 2019 zu konfigurieren, können Sie die Befehle erneut ausführen, indem Sie einen höheren Wert verwenden. Es ist nicht erforderlich, die vorhandene Konfiguration im Voraus zu entfernen.
Import-Module IISAdministration
Reset-IISServerManager -Confirm:$false
Start-IISCommitDelay
$sitesCollection = Get-IISConfigSection -SectionPath "system.applicationHost/sites" | Get-IISConfigCollection
$siteElement = Get-IISConfigCollectionElement -ConfigCollection $sitesCollection -ConfigAttribute @{"name"="Default Web Site"}
$hstsElement = Get-IISConfigElement -ConfigElement $siteElement -ChildElementName "hsts"
Set-IISConfigAttributeValue -ConfigElement $hstsElement -AttributeName "enabled" -AttributeValue $true
Set-IISConfigAttributeValue -ConfigElement $hstsElement -AttributeName "max-age" -AttributeValue 300
Set-IISConfigAttributeValue -ConfigElement $hstsElement -AttributeName "includeSubDomains" -AttributeValue $true
Wenn Sie planen, Ihre Domäne zu HSTS Preload List
hinzuzufügen, müssen Sie sicherstellen, dass die preload
Direktive auch als Teil des Strict-Transport-Security
Headers gesendet wird. Sie dürfen die preload
Direktive nicht senden, wenn Sie nicht planen, Ihre Domäne an das HSTS Preload List
zu übermitteln.
Set-IISConfigAttributeValue -ConfigElement $hstsElement -AttributeName "preload" -AttributeValue $true
Schließlich müssen die folgenden Befehle ausgeführt werden, um die HSTS-Konfiguration abzuschließen:
Stop-IISCommitDelay
Remove-Module IISAdministration
HSTS-Konfiguration über IIS-Manager
Führen Sie die folgenden Schritte im Internetinformationsdienste-Manager aus, um HSTS zu konfigurieren und zu aktivieren:
Starten des IIS-Managers (
InetMgr.exe
)Navigieren Sie zu ,
Sites
und klicken Sie aufDefault Web Site
Wählen Sie im
Actions
MenüHSTS...
Aktivieren Sie das
Enable
Kontrollkästchen, definieren Sie denmax-age
Wert, und wählen Sie die Direktiven gemäß der Beschreibung in diesem Artikel aus.Wichtig
Wir können HTTP nicht mithilfe der HSTS-Konfiguration zu HTTPS umleiten, da dies die Konnektivität für einige Szenarien unterbricht, einschließlich der Exchange-Verwaltungsshell (EMS). Wenn Sie die Umleitung von HTTP zu HTTPS aktivieren möchten, müssen Sie die Schritte unter Konfigurieren der Umleitung von http zu https für Outlook im Web in Exchange Server ausführen.
Klicken Sie hier
OK
, um die Konfiguration abzuschließen und zu aktivieren.
Exchange Server 2016
Hinweis
Die HSTS-Konfiguration ist zwar über die Benutzeroberfläche auf Betriebssystemen möglich, die von Exchange Server 2019 unterstützt werden, aber dieses Steuerelement ist auf Betriebssystemen, die von Exchange Server 2016 unterstützt werden, nicht nativ verfügbar. Wir beschreiben daher nur die Schritte, die über PowerShell ausgeführt werden müssen.
Um Exchange Server 2016 für das Senden des Strict-Transport-Security
Headers zu konfigurieren, führen Sie die folgenden Befehle in einem PowerShell-Fenster mit erhöhten Rechten aus. Die HSTS-Konfiguration ist eine serverspezifische Konfiguration und muss daher auf jedem Exchange-Server ausgeführt werden:
Hinweis
Um einen höheren max-age
Wert für Exchange Server 2016 zu konfigurieren, müssen Sie zuerst den HTTP-Antwortheader entfernen, bevor Sie die folgenden Befehle erneut ausführen.
Windows Server 2012 & 2012 R2
Wenn Sie nicht planen, Ihre Domäne dem HSTS Preload List
hinzuzufügen, müssen Sie sicherstellen, dass die preload
Direktive nicht als Teil des Strict-Transport-Security
Headers gesendet wird. Führen Sie den folgenden Befehl aus, um HSTS zu konfigurieren , ohne die preload
-Anweisung zu senden:
Import-Module WebAdministration
Add-WebConfigurationProperty -Filter "system.webServer/httpProtocol/customHeaders" -PSPath "IIS:\Sites\Default Web Site" -Name . -AtElement @{name="Strict-Transport-Security"} -Value @{name="Strict-Transport-Security";value="max-age=300; includeSubDomains"}
oder
Wenn Sie planen, Ihre Domäne zu HSTS Preload List
hinzuzufügen, müssen Sie sicherstellen, dass die preload
Direktive als Teil des Strict-Transport-Security
Headers gesendet wird. Führen Sie den folgenden Befehl aus, um Exchange Server zum Senden der preload
Direktive als Teil der HSTS-Konfiguration zu konfigurieren:
Import-Module WebAdministration
Add-WebConfigurationProperty -Filter "system.webServer/httpProtocol/customHeaders" -PSPath "IIS:\Sites\Default Web Site" -Name . -AtElement @{name="Strict-Transport-Security"} -Value @{name="Strict-Transport-Security";value="max-age=300; includeSubDomains; preload"}
Windows Server 2016
Import-Module IISAdministration
Reset-IISServerManager -Confirm:$false
Start-IISCommitDelay
$iisConfig = Get-IISConfigSection -SectionPath "system.webServer/httpProtocol" -CommitPath "Default Web Site" | Get-IISConfigCollection -CollectionName "customHeaders"
Wenn Sie nicht planen, Ihre Domäne dem HSTS Preload List
hinzuzufügen, müssen Sie sicherstellen, dass die preload
Direktive nicht als Teil des Strict-Transport-Security
Headers gesendet wird. Führen Sie den folgenden Befehl aus, um HSTS zu konfigurieren , ohne die preload
-Anweisung zu senden:
New-IISConfigCollectionElement -ConfigCollection $iisConfig -ConfigAttribute @{"name"="Strict-Transport-Security"; "value"="max-age=300; includeSubDomains";}
oder
Wenn Sie planen, Ihre Domäne zu HSTS Preload List
hinzuzufügen, müssen Sie sicherstellen, dass die preload
Direktive als Teil des Strict-Transport-Security
Headers gesendet wird. Führen Sie den folgenden Befehl aus, um Exchange Server zum Senden der preload
Direktive als Teil der HSTS-Konfiguration zu konfigurieren:
New-IISConfigCollectionElement -ConfigCollection $iisConfig -ConfigAttribute @{"name"="Strict-Transport-Security"; "value"="max-age=300; includeSubDomains; preload";}
Schließlich müssen die folgenden Befehle ausgeführt werden, um die HSTS-Konfiguration abzuschließen:
Stop-IISCommitDelay
Remove-Module IISAdministration
Deaktivieren von HSTS auf Exchange Server
Wenn Sie verhindern möchten, dass Exchange Server den Strict-Transport-Security
Header sendet, können Sie die Konfiguration auf einer Serverbasis zurücksetzen. Die Schritte zum Deaktivieren von HSTS unterscheiden sich am Exchange Server 2016 und Exchange Server 2019.
Hinweis
Mit der HSTS-Spezifikation können Sie die max-age
Direktive mit dem Wert 0
senden. Diese Konfiguration kann verwendet werden, um die zwischengespeicherten HSTS-Richtlinieninformationen von Browsern zu überschreiben. Wenn Sie ihre Exchange Server HSTS-Konfiguration entfernen möchten, kann es hilfreich sein, zuerst den max-age
Wert festzulegen, 0
bevor Sie die Strict-Transport-Security
Headerkonfiguration entfernen.
Exchange Server 2019
Damit Exchange Server 2019 das Senden des Strict-Transport-Security
Headers beendet, können Sie die Windows PowerShell oder die IIS-Manager-Benutzeroberfläche (UI) verwenden. Im folgenden Abschnitt werden beide Methoden beschrieben.
HSTS-Konfiguration über PowerShell
Führen Sie die folgenden Befehle in einem PowerShell-Fenster mit erhöhten Rechten aus, um HSTS zu deaktivieren:
Import-Module IISAdministration
Reset-IISServerManager -Confirm:$false
Start-IISCommitDelay
$sitesCollection = Get-IISConfigSection -SectionPath "system.applicationHost/sites" | Get-IISConfigCollection
$siteElement = Get-IISConfigCollectionElement -ConfigCollection $sitesCollection -ConfigAttribute @{"name"="Default Web Site"}
$hstsElement = Get-IISConfigElement -ConfigElement $siteElement -ChildElementName "hsts"
Set-IISConfigAttributeValue -ConfigElement $hstsElement -AttributeName "enabled" -AttributeValue $false
Set-IISConfigAttributeValue -ConfigElement $hstsElement -AttributeName "max-age" -AttributeValue 0
Set-IISConfigAttributeValue -ConfigElement $hstsElement -AttributeName "includeSubDomains" -AttributeValue $false
Wenn die vorherige HSTS-Konfiguration das Senden der preload
Direktive war, stellen Sie sicher, dass Sie auch dies deaktivieren:
Wichtig
Denken Sie daran, auch die Entfernung aus der HSTS-Vorabladeliste anzufordern . Wenn Sie vergessen, die Domäne aus der Vorabladeliste zu entfernen, versuchen Browser weiterhin, HSTS zu erzwingen.
Set-IISConfigAttributeValue -ConfigElement $hstsElement -AttributeName "preload" -AttributeValue $false
Schließlich müssen die folgenden Befehle ausgeführt werden, um die HSTS-Konfiguration abzuschließen:
Stop-IISCommitDelay
Remove-Module IISAdministration
HSTS-Konfiguration über IIS-Manager
Führen Sie im Internetinformationsdienste-Manager die folgenden Schritte aus, um HSTS zu deaktivieren:
Starten des IIS-Managers (
InetMgr.exe
)Navigieren Sie zu ,
Sites
und klicken Sie aufDefault Web Site
Wählen Sie im
Actions
MenüHSTS...
Deaktivieren Sie alle Direktiven, legen Sie die
max-age
Direktive auf0
fest, und deaktivieren Sie schließlich das Kontrollkästchen.Enable
Klicken Sie hier
OK
, um die Konfiguration abzuschließen.
Exchange Server 2016
Hinweis
Die HSTS-Konfiguration ist zwar über die Benutzeroberfläche auf Betriebssystemen möglich, die von Exchange Server 2019 unterstützt werden, aber dieses Steuerelement ist auf Betriebssystemen, die von Exchange Server 2016 unterstützt werden, nicht nativ verfügbar. Wir beschreiben daher nur die Schritte, die über PowerShell ausgeführt werden müssen.
Damit Exchange Server 2016 das Senden des Strict-Transport-Security
Headers beendet, führen Sie die folgenden Befehle in einem PowerShell-Fenster mit erhöhten Rechten auf jedem Ihrer Exchange-Server aus:
Windows Server 2012 & 2012 R2
Import-Module WebAdministration
Remove-WebConfigurationProperty -PSPath "IIS:\Sites\Default Web Site" -Filter "system.webServer/httpProtocol/customHeaders" -Name . -AtElement @{name="Strict-Transport-Security"}
Windows Server 2016
Import-Module IISAdministration
Reset-IISServerManager -Confirm:$false
Start-IISCommitDelay
$iisConfig = Get-IISConfigSection -SectionPath "system.webServer/httpProtocol" -CommitPath "Default Web Site" | Get-IISConfigCollection -CollectionName "customHeaders"
Wenn die vorherige HSTS-Konfiguration die preload
-Anweisung nicht gesendet hat, führen Sie den folgenden Befehl aus:
Remove-IISConfigCollectionElement -ConfigCollection $iisConfig -ConfigAttribute @{"name"="Strict-Transport-Security"; "value"="max-age=300; includeSubDomains";}
oder
Wenn die vorherige HSTS-Konfiguration die preload
-Direktive senden sollte, stellen Sie sicher, dass Sie diesen Befehl ausführen:
Remove-IISConfigCollectionElement -ConfigCollection $iisConfig -ConfigAttribute @{"name"="Strict-Transport-Security"; "value"="max-age=300; includeSubDomains; preload";}
Schließlich müssen die folgenden Befehle ausgeführt werden, um die HSTS-Konfiguration abzuschließen:
Stop-IISCommitDelay
Remove-Module IISAdministration
Überprüfen, ob HSTS wie erwartet funktioniert
Die beste Möglichkeit, um zu bestätigen, dass der HSTS-Schutz wie erwartet funktioniert, ist die Verwendung eines modernen Browsers, der HSTS unterstützt (z. B. Microsoft Edge, Firefox, Chrome, Safari, Opera usw.). Die folgenden Schritte können ausgeführt werden, wenn Sie den Microsoft Edge-Browser verwenden. Wenn Sie einen anderen Browser verwenden, lesen Sie die Dokumentation, um herauszufinden, welche Schritte zum Überprüfen der HSTS-Flags erforderlich sind:
- Öffnen Sie den Browser, und stellen Sie eine HTTPS-Verbindung mit OWA oder ECP her. Stellen Sie sicher, dass das vom Exchange-Server zurückgegebene Zertifikat mit der (Unter-) Domäne übereinstimmt, die Sie verwendet haben (z. B. e2k16-2.contoso.lab) und vom Clientcomputer als vertrauenswürdig eingestuft wird (da dies erforderlich ist, um den HSTS-Schutz des Browsers für die Domäne zu aktivieren).
- Geben Sie
edge://net-internals/#hsts
in die Adressleiste ein, und drücken Sie die EINGABETASTE. - Geben Sie den Domänennamen, den Sie für den Zugriff auf OWA oder ECP verwendet haben (z. B. e2k16-2.contoso.lab), in das Feld ein, und drücken Sie die
Query HSTS/PKP domain
EINGABETASTE.
Beispiel:
Wenn das Ergebnis lautet Not found
, bedeutet dies, dass HSTS nicht für die Domäne verwendet wird. Der Grund kann sein, dass die URL zuvor nicht aufgerufen wurde oder dass der Eintrag mit dem HSTS-Richtlinienspeicher abgelaufen ist (er ist für den in der max-age
-Anweisung angegebenen Zeitraum gültig).
Wenn ein Ergebnis gefunden wird, sieht die Ausgabe wie folgt aus:
Wenn HSTS verwendet wird und eine Verbindung nicht vertrauenswürdig ist (z. B. wenn die URL nicht mit der Domäne übereinstimmt, für die das Zertifikat ausgestellt wird oder das Zertifikat nicht vertrauenswürdig oder abgelaufen ist), wird dem Benutzer die folgende Warnung angezeigt, die nicht umgangen werden kann: