Konfigurieren des IPsec-Transportmodus für privates ExpressRoute-Peering

Dieser Artikel hilft Ihnen beim Erstellen von IPsec-Tunneln im Transportmodus über privates ExpressRoute-Peering. Der Tunnel wird zwischen Azure-VMs unter Windows und lokalen Windows-Hosts erstellt. In den Konfigurationsschritten in diesem Artikel werden Gruppenrichtlinienobjekte verwendet. Es ist möglich, diese Konfiguration ohne Organisationseinheiten (Organizational Units, OUs) und Gruppenrichtlinienobjekte (Group Policy Objects, GPOs) zu erstellen. Allerdings vereinfacht die Kombination aus Organisationseinheiten und Gruppenrichtlinienobjekten die Steuerung Ihrer Sicherheitsrichtlinien und ermöglicht eine schnelle Aufskalierung. Bei den Schritten in diesem Artikel wird davon ausgegangen, dass Sie bereits über eine Active Directory-Konfiguration verfügen und mit der Verwendung von Organisationseinheiten und Gruppenrichtlinienobjekten vertraut sind.

Informationen zu dieser Konfiguration.

Die Konfiguration in den folgenden Schritten verwendet ein einzelnes virtuelles Azure-Netzwerk (Azure-VNet) mit privatem ExpressRoute-Peering. Diese Konfiguration kann jedoch mehrere Azure-VNets und lokale Netzwerke umfassen. Die Informationen in diesem Artikel helfen Ihnen dabei, eine IPsec-Verschlüsselungsrichtlinie zu definieren, die Sie auf eine Gruppe von Azure-VMs oder lokalen Hosts anwenden können. Diese Azure-VMs bzw. lokalen Hosts gehören zur selben Organisationseinheit. Sie konfigurieren die Verschlüsselung zwischen den virtuellen Azure-Computern (vm1 und vm2) und dem lokalen „host1“ nur für HTTP-Datenverkehr mit dem Zielport 8080. Je nach Ihren Anforderungen können verschiedene Arten von IPsec-Richtlinien erstellt werden.

Arbeiten mit Organisationseinheiten

Die Sicherheitsrichtlinie, die mit einer Organisationseinheit verknüpft ist, wird über ein Gruppenrichtlinienobjekt an die Computern gesendet. Einige der Vorteile, die ein Verwenden von Organisationseinheiten gegenüber dem Anwenden von Richtlinien auf einen einzelnen Host bietet, sind:

  • Durch Verknüpfen einer Richtlinie mit einer Organisationseinheit wird sichergestellt, dass Computer, die zur selben Organisationseinheit gehören, dieselben Richtlinien erhalten.
  • Wird die Sicherheitsrichtlinie geändert, die mit der Organisationseinheit verknüpft ist, werden die Änderungen auf alle Hosts in der Organisationseinheit angewendet.

Diagramme

Das folgende Diagramm zeigt die Vernetzung und den zugewiesenen IP-Adressraum. Auf den Azure-VMs und auf dem lokalen Host wird Windows 2016 ausgeführt. Die Azure-VMs und der lokale „host1“ gehören zur selben Domäne. Auf den Azure-VMs und auf den lokalen Hosts können Namen ordnungsgemäß mit DNS aufgelöst werden.

1

Dieses Diagramm zeigt die IPsec-Tunnel in der Übertragung im privaten ExpressRoute-Peering.

4

Arbeiten mit einer IPsec-Richtlinie

In Windows ist Verschlüsselung mit einer IPsec-Richtlinie verknüpft. In einer IPsec-Richtlinie wird bestimmt, welcher IP-Datenverkehr geschützt wird, und wird der Sicherheitsmechanismus bestimmt, der auf die IP-Pakete angewendet wird. IPSec-Richtlinien bestehen aus den folgenden Elementen: Filterlisten, Filteraktionen und Sicherheitsregeln.

Für das Konfigurieren einer IPsec-Richtlinie muss die Bedeutung der folgenden IPsec-Richtlinienbegriffe klar sein:

  • IPSec-Richtlinien: Eine Sammlung von Regeln. Es kann immer nur jeweils genau eine Richtlinie aktiv („zugewiesen“) sein. Jede Richtlinie kann mehrere Regeln haben, die alle gleichzeitig aktiv sein können. Einem Computer kann immer nur jeweils genau eine aktive IPsec-Richtlinie zugewiesen sein. In einer IPsec-Richtlinie können aber mehrere Aktionen definiert sein, die in verschiedenen Situationen ausgeführt werden können. Jede Gruppe von IPsec-Regeln ist mit einer Filterliste verknüpft, die den Typ des Netzwerkdatenverkehrs betrifft, für den die jeweilige Regel gilt.

  • Filterliste: Eine Filterliste ist eine Zusammenstellung eines oder mehrerer Filter. Eine Liste kann mehrere Filter enthalten. Ein Filter definiert anhand der folgenden Kriterien, ob die Kommunikation blockiert, zugelassen oder gesichert wird: IP-Adressbereiche, Protokolle oder sogar bestimmte Ports. In jedem Filter wird ein bestimmter Satz von Bedingungen abgeglichen, z. B. Pakete, die aus einem bestimmten Subnetz an einen bestimmten Computer hinter einem bestimmten Zielport gesendet wurden. Wenn die Netzwerkbedingungen mindestens einem dieser Filter entsprechen, wird die Filterliste aktiviert. Jeder Filter ist in einer bestimmten Filterliste definiert. Ein Filter kann nicht zu mehreren Filterlisten gehören. Eine Filterliste kann aber in mehrere IPsec-Richtlinien integriert werden.

  • Filteraktion: In einer Sicherheitsmethode sind Sicherheitsalgorithmen, Protokolle und Schlüssel definiert, die ein Computer bei einer Internetschlüsselaustausch-Aushandlung bereitstellt. Eine Filteraktion ist ein Liste von Sicherheitsmethoden, die in der Reihenfolge ihrer Priorität geordnet sind. Wenn ein Computer eine IPsec-Sitzung aushandelt, akzeptiert oder sendet er Vorschläge auf Basis der Sicherheitseinstellung, die in der entsprechenden Filteraktionenliste gespeichert ist.

  • Sicherheitsregel: In einer Regel wird bestimmt, wie und wann eine IPsec-Richtlinie Kommunikation schützt. In einer Regel werden eine Filterliste und Filteraktionen verwendet, um eine IPsec-Regel zu erstellen, gemäß der die jeweilige IPsec-Verbindung erstellt wird. Jede Richtlinie kann mehrere Regeln haben, die alle gleichzeitig aktiv sein können. Jede Regel enthält eine IP-Filterliste und eine Sammlung von Sicherheitsaktionen, die ausgeführt werden, wenn es eine Übereinstimmung mit dieser Filterliste gibt:

    • IP-Filteraktionen
    • Authentifizierungsmethoden
    • IP-Tunneleinstellungen
    • Verbindungstypen

5

Voraussetzungen

Stellen Sie sicher, dass die folgenden Voraussetzungen erfüllt sind:

  • Sie benötigen eine funktionierende Active Directory-Konfiguration, die Sie dazu verwenden können, Gruppenrichtlinieneinstellungen zu implementieren. Weitere Informationen zu Gruppenrichtlinienobjekten finden Sie unter Gruppenrichtlinienobjekte.

  • Sie benötigen eine aktive ExpressRoute-Verbindung.

    • Weitere Informationen zum Erstellen einer ExpressRoute-Verbindung (Leitung) finden Sie unter Erstellen und Ändern einer ExpressRoute-Verbindung mit PowerShell.
    • Vergewissern Sie sich, dass die Verbindung durch Ihren Konnektivitätsanbieter aktiviert ist.
    • Vergewissern Sie sich, dass ein privates Azure-Peering für die Verbindung konfiguriert ist. Informationen zum Routing finden Sie unter Konfigurieren des Routings .
    • Vergewissern Sie sich, dass ein virtuelles Netzwerk und ein virtuelles Netzwerkgateway erstellt und vollständig bereitgestellt sind. Befolgen Sie die Anweisungen zum Erstellen eines virtuellen Netzwerkgateways für ExpressRoute. Für ein virtuelles Netzwerkgateway für ExpressRoute wird der Gatewaytyp ExpressRoute und nicht „VPN“ verwendet.
  • Das virtuelle ExpressRoute-Netzwerkgateway muss mit der ExpressRoute-Leitung verbunden werden. Weitere Informationen finden Sie unter Verbinden eines virtuellen Netzwerks mit einer ExpressRoute-Verbindung.

  • Vergewissern Sie sich, dass die virtuellen Azure Windows-Computer im virtuellen Netzwerk bereitgestellt werden.

  • Vergewissern Sie sich, dass Konnektivität zwischen den lokalen Hosts und den Azure-VMs gegeben ist.

  • Vergewissern Sie sich, dass die Azure-VMs unter Windows und die lokalen Hosts DNS verwenden können, um Namen ordnungsgemäß aufzulösen.

Workflow

  1. Erstellen Sie ein Gruppenrichtlinienobjekt, und verknüpfen Sie es mit der Organisationseinheit.
  2. Definieren Sie eine IPsec-Filteraktion.
  3. Definieren Sie eine IPsec-Filterliste.
  4. Erstellen Sie eine IPsec-Richtlinie mit Sicherheitsregeln.
  5. Weisen Sie der Organisationseinheit das IPsec-Gruppenrichtlinienobjekt zu.

Beispielwerte

  • Domänenname: ipsectest.com

  • Organisationseinheit: IPSecOU

  • Lokaler Windows-Computer: host1

  • Azure Windows-VMs: vm1, vm2

1. Erstellen eines Gruppenrichtlinienobjekts

  1. Erstellen Sie ein neues, mit einer Organisationseinheit verknüpftes Gruppenrichtlinienobjekt, indem Sie das Snap-In „Gruppenrichtlinienverwaltung“ öffnen. Suchen Sie anschließend nach der Organisationseinheit, mit der das Gruppenrichtlinienobjekt verknüpft werden soll. In diesem Beispiel hat die Organisationseinheit den Namen IPSecOU.

    9

  2. Wählen Sie im Gruppenrichtlinienverwaltungs-Snap-In die Organisationseinheit aus, und klicken Sie mit der rechten Maustaste. Wählen Sie in der Dropdownliste den Eintrag Gruppenrichtlinienobjekt in dieser Domäne erstellen und hier verknüpfen... aus.

    10

  3. Geben Sie dem Gruppenrichtlinienobjekt einen intuitiven Namen, damit Sie es später leicht finden können. Klicken Sie auf OK, um das Gruppenrichtlinienobjekt zu erstellen und zu verknüpfen.

    11

Damit das Gruppenrichtlinienobjekt auf die Organisationseinheit angewendet wird, muss das Gruppenrichtlinienobjekt nicht nur mit der Organisationseinheit verknüpft werden, sondern die Verknüpfung muss auch aktiviert werden.

  1. Suchen Sie nach dem Gruppenrichtlinienobjekt, das Sie erstellt haben, klicken Sie mit der rechten Maustaste, und wählen Sie Bearbeiten in der Dropdownliste aus.

  2. Damit das Gruppenrichtlinienobjekt auf die Organisationseinheit angewendet wird, wählen Sie Verknüpfung aktiviert aus.

    12

3. Definieren der IP-Filteraktion

  1. Klicken Sie in der Dropdownliste mit der rechten Maustaste auf IP-Sicherheitsrichtlinie in Active Directory, und klicken Sie dann auf IP-Filterlisten und Filteraktionen verwalten... .

    15

  2. Klicken Sie auf der Registerkarte Filteraktionen verwalten auf Hinzufügen.

    16

  3. Klicken Sie auf der Seite des Filteraktions-Assistenten für IP-Sicherheit auf Weiter.

    17

  4. Geben Sie der Filteraktion einen aussagekräftigen Namen, damit Sie sie später finden können. In diesem Beispiel wird der Filteraktion der Name myEncryption gegeben. Sie können auch eine Beschreibung hinzufügen. Klicken Sie anschließend auf Weiter.

    18

  5. Über Sicherheit aushandeln können Sie das Verhalten für den Fall festlegen, dass IPsec nicht mit einem anderen Computer eingerichtet werden kann. Aktivieren Sie Sicherheit aushandeln, und klicken Sie dann auf Weiter.

    19

  6. Aktivieren Sie auf der Seite Kommunikation mit Computern, auf denen IPsec nicht unterstützt wird die Option Keine ungesicherte Kommunikation zulassen, und klicken Sie dann auf Weiter.

    20

  7. Aktivieren Sie auf der Seite IP-Datenverkehr und Sicherheit die Option Benutzerdefiniert, und klicken Sie dann auf Einstellungen... .

    21

  8. Wählen Sie auf der Seite Einstellungen für Sicherheitsmethoden anpassen die Option Datenintegrität und -verschlüsselung (ESP): SHA1, 3DES aus. Wählen Sie anschließend OK aus.

    22

  9. Auf der Seite Filteraktionen verwalten können Sie sehen, dass der myEncryption-Filter erfolgreich hinzugefügt wurde. Klicken Sie auf Schließen.

    23

4. Definieren einer IP-Filterliste

Erstellen Sie eine Filterliste, in der verschlüsselter HTTP-Datenverkehr mit dem Zielport 8080 angegeben ist.

  1. Um zu bestimmen, welche Arten von Datenverkehr verschlüsselt werden müssen, verwenden Sie eine IP-Filterliste. Klicken Sie auf der Registerkarte IP-Filterlisten verwalten auf Hinzufügen, um eine neue IP-Filterliste hinzuzufügen.

    24

  2. Geben Sie in das Feld Name: einen Namen für die Filterliste ein. Beispiel: azure-onpremises-HTTP8080. Klicken Sie anschließend auf Hinzufügen.

    25

  3. Aktivieren Sie auf der Seite IP-Filterbeschreibung und Eigenschaft "Gespiegelt" die Option Gespiegelt. Die Einstellung für „Gespiegelt“ bewirkt ein Abgleichen von Paketen in beide Richtungen, wodurch bidirektionale Kommunikation ermöglicht wird. Wählen Sie Weiteraus.

    26

  4. Wählen Sie auf der Seite Quelle des IP-Datenverkehrs in der Dropdownliste Quelladresse die Option Eine bestimmte IP-Adresse oder ein bestimmtes Subnetz aus.

    27

  5. Geben Sie in IP-Adresse oder Subnetz: die Quelladresse für den IP-Datenverkehr an, und klicken Sie dann auf Weiter.

    28

  6. Festlegen der Zieladresse: IP-Adresse oder Subnetz. Klicken Sie anschließend auf Weiter.

    29

  7. Wählen Sie auf der Seite IP-Protokolltyp die Option TCP aus. Klicken Sie anschließend auf Weiter.

    30

  8. Aktivieren Sie auf der Seite Port des IP-Protokolls die Optionen Von jedem Port und An diesen Port. Geben Sie 8080 in das Textfeld ein. Diese Einstellungen geben an, dass nur der HTTP-Datenverkehr am Zielport 8080 verschlüsselt wird. Klicken Sie anschließend auf Weiter.

    31

  9. Zeigen Sie die IP-Filterliste an. Die Konfiguration der IP-Filterliste azure-onpremises-HTTP8080 bewirkt, dass Verschlüsselung für den gesamten Datenverkehr ausgelöst wird, der die folgenden Kriterien erfüllt:

    • Eine Quelladresse in Bereich 10.0.1.0/24 (Azure-Subnetz2)
    • Eine Zieladresse im Bereich 10.2.27.0/25 (lokales Subnetz)
    • TCP-Protokoll
    • Zielport 8080

    32

5. Bearbeiten der IP-Filterliste

Um dieselbe Art von Datenverkehr vom lokalen Host zur Azure-VM zu verschlüsseln, benötigen Sie einen zweiten IP-Filter. Führen Sie dieselben Schritte aus wie für den ersten IP-Filter, und erstellen Sie einen neuen IP-Filter. Die einzigen Unterschiede sind das Quellsubnetz und das Zielsubnetz.

  1. Um einen neuen IP-Filter zur IP-Filterliste hinzuzufügen, wählen Sie Bearbeiten aus.

    33

  2. Klicken Sie auf der Seite IP-Filterliste auf Hinzufügen.

    34

  3. Erstellen Sie einen zweiten IP-Filter mit den Einstellungen aus dem folgenden Beispiel:

    35

  4. Nachdem Sie den zweiten IP-Filter erstellt haben, sieht die IP-Filterliste wie folgt aus:

    36

Wenn die Kommunikation zwischen einem lokalen Standort und einem Azure-Subnetz verschlüsselt werden muss, um eine Anwendung zu schützen: Anstatt die vorhandene IP-Filterliste zu ändern, können Sie eine neue IP-Filterliste hinzufügen. Durch Zuordnung von zwei oder mehr IP-Filterlisten zur selben IPsec-Richtlinie erhalten Sie mehr Flexibilität. Sie können eine IP-Filterliste ändern oder entfernen, ohne dass sich dies auf die anderen IP-Filterlisten auswirkt.

6. Erstellen einer IPsec-Sicherheitsrichtlinie

Erstellen Sie eine IPsec-Richtlinie mit Sicherheitsregeln.

  1. Wählen Sie den mit der Organisationseinheit verknüpften Knoten IP-Sicherheitsrichtlinien in Active Directory aus. Mit der rechten Maustaste, und wählen IP-Sicherheitsrichtlinie erstellen aus.

    37

  2. Geben Sie der Sicherheitsrichtlinie einen Namen. Beispiel: policy-azure-onpremises. Klicken Sie anschließend auf Weiter.

    38

  3. Klicken Sie auf Weiter, ohne das Kontrollkästchen zu aktivieren.

    39

  4. Vergewissern Sie sich, dass das Kontrollkästchen Eigenschaften bearbeiten aktiviert ist, und klicken Sie dann auf Fertig stellen.

    40

7. Bearbeiten der IPsec-Sicherheitsrichtlinie

Fügen Sie der IPSec-Richtlinie die IP-Filterliste und die Filteraktion hinzu, die Sie zuvor konfiguriert haben.

  1. Klicken Sie auf der Registerkarte Regeln der HTTP-Richtlinieneigenschaften auf Hinzufügen.

    41

  2. Klicken Sie auf der Seite Willkommen auf Weiter.

    42

  3. Für eine Regel kann der IPsec-Modus festgelegt werden: Tunnelmodus oder Transportmodus.

    • Im Tunnelmodus wird das ursprüngliche Paket durch eine Reihe von IP-Headern gekapselt. Im Tunnelmodus werden die internen Routinginformationen geschützt, indem der IP-Header des ursprünglichen Pakets verschlüsselt wird. Der Tunnelmodus ist häufig zwischen Gateways in Site-to-Site-VPN-Szenarios implementiert. Der Tunnelmodus wird in den meisten Fällen für die End-to-End-Verschlüsselung zwischen Hosts verwendet.

    • Im Transportmodus werden nur die Nutzlast und der ESP-Nachspann verschlüsselt. Der IP-Header des ursprünglichen Pakets wird nicht verschlüsselt. Im Transportmodus werden die IP-Quelle und das IP-Ziel der Pakete nicht geändert.

    Aktivieren Sie Diese Regel gibt keinen Tunnel an, und klicken Sie dann auf Weiter.

    43

  4. In Netzwerktyp wird festgelegt, welche Netzwerkverbindung mit der Sicherheitsrichtlinie verknüpft wird. Aktivieren Sie Alle Netzwerkverbindungen, und klicken Sie dann auf Weiter.

    44

  5. Wählen Sie die IP-Filterliste aus, die Sie zuvor erstellt haben (azure-onpremises-HTTP8080), und klicken Sie dann auf Weiter.

    45

  6. Wählen Sie die vorhandene Filteraktion myEncryption aus, die Sie zuvor erstellt haben.

    46

  7. Windows unterstützt vier verschiedene Authentifizierungstypen: Kerberos, Zertifikate, NTLMv2 und vorinstallierter Schlüssel. Da wir in eine Domäne eingebundene Hosts verwenden, aktivieren Sie Active Directory-Standard (Kerberos V5-Protokoll) , und klicken Sie dann auf Weiter.

    47

  8. Die neue Richtlinie erstellt die Sicherheitsregel azure-onpremises-HTTP8080. Klicken Sie auf OK.

    48

Die IPsec-Richtlinie erfordert, dass für alle HTTP-Verbindungen am Zielport 8080 der IPsec-Transportmodus verwendet wird. Da HTTP ein Klartextprotokoll ist, können Sie durch Aktivieren der Sicherheitsrichtlinie sicherstellen, dass Daten während der Übertragung über das private ExpressRoute-Peering verschlüsselt werden. Die Konfiguration einer IPsec-Richtlinie für Active Directory ist komplexer als die Einrichtung der Windows-Firewall mit erweiterter Sicherheit. Allerdings ermöglicht eine solche Richtlinie eine bessere Anpassung der IPsec-Verbindung.

8. Zuweisen des IPsec-Gruppenrichtlinienobjekts zur Organisationseinheit

  1. Zeigen Sie die Richtlinie an. Die Sicherheitsgruppenrichtlinie ist definiert, aber noch nicht zugewiesen.

    49

  2. Um die Sicherheitsgruppenrichtlinie zur Organisationseinheit IPSecOU zuzuweisen, klicken Sie mit der rechten Maustaste auf die Sicherheitsrichtlinie, und wählen Zuweisen aus. Die Sicherheitsgruppenrichtlinie wird jedem Computer zugewiesen, der der Organisationseinheit angehört.

    50

Überprüfen der Verschlüsselung von Datenverkehr

Um das Verschlüsselungsgruppenrichtlinienobjekt zu testen, das auf die Organisationseinheit angewendet wird, installieren Sie IIS auf allen Azure-VMs und in „host1“. Jede IIS-Instanz wird so angepasst, dass sie auf HTTP-Anforderungen an Port 8080 reagiert. Um die Verschlüsselung zu überprüfen, können Sie einen Netzwerk-Sniffer (z. B. Wireshark) auf allen Computer in der Organisationseinheit installieren. Ein PowerShell-Skript fungiert als HTTP-Client, um HTTP-Anforderungen an Port 8080 zu generieren:

$url = "http://10.0.1.20:8080"
while ($true) {
try {
[net.httpWebRequest]
$req = [net.webRequest]::create($url)
$req.method = "GET"
$req.ContentType = "application/x-www-form-urlencoded"
$req.TimeOut = 60000

$start = get-date
[net.httpWebResponse] $res = $req.getResponse()
$timetaken = ((get-date) - $start).TotalMilliseconds

Write-Output $res.Content
Write-Output ("{0} {1} {2}" -f (get-date), $res.StatusCode.value__, $timetaken)
$req = $null
$res.Close()
$res = $null
} catch [Exception] {
Write-Output ("{0} {1}" -f (get-date), $_.ToString())
}
$req = $null

# uncomment the line below and change the wait time to add a pause between requests
#Start-Sleep -Seconds 1
}

Die folgende Netzwerkerfassung zeigt die Ergebnisse für den lokalen Host „host1“ mit Anzeigefilter ESP, sodass nur der verschlüsselte Datenverkehr berücksichtigt wird:

51

Wenn Sie das PowerShell-Skript lokal (HTTP-Client) ausführen, zeigt die Netzwerkerfassung in der Azure-VM eine ähnliche Ablaufverfolgung an.

Nächste Schritte

Weitere Informationen über ExpressRoute finden Sie unter ExpressRoute – FAQ.