Remoteidentitätsautorisierung
Für das Remoteidentitätsautorisierungs-IPsec-Richtlinienszenario müssen eingehende Verbindungen aus einer bestimmten Gruppe von Remotesicherheitsprinzipale stammen, die in einer Zugriffssteuerungsliste (Access Control List, SD) von Windows angegeben sind. Wenn die Remoteidentität (wie von IPsec bestimmt) nicht mit dem Satz zulässiger Identitäten übereinstimmt, wird die Verbindung gelöscht. Diese Richtlinie muss in Verbindung mit einer der Transportmodusrichtlinienoptionen angegeben werden.
Wenn AuthIP aktiviert ist, können zwei Sicherheitsdeskriptoren angegeben werden, die dem Hauptmodus von AuthIP entsprechen, und die andere, die dem erweiterten AuthIP-Modus entspricht.
Ein Beispiel für ein mögliches Szenario für den Aushandlungsermittlungs-Transportmodus ist "Sichern des gesamten Unicastdatenverkehrs mit Ausnahme von ICMP, verwendung des IPsec-Transportmodus, Aktivieren der Aushandlungsermittlung und Einschränken des eingehenden Zugriffs auf Remoteidentitäten, die pro Sicherheitsdeskriptor SD1 (entsprechend IKE/AuthIP-Hauptmodus) und Sicherheitsdeskriptor SD2 (entsprechend dem erweiterten AuthIP-Modus) zulässig sind, für alle Unicast-Datenverkehr, die TCP-lokaler Port 5555 entsprechen."
Verwenden Sie die folgende WFP-Konfiguration, um dieses Beispiel programmgesteuert zu implementieren.
Fügen Sie einen oder beide der folgenden MM-Richtlinienanbieterkontexte hinzu.
- Für IKE, einen Richtlinienanbieterkontext vom Typ FWPM_IPSEC_IKE_MM_CONTEXT.
- Für AuthIP, einen Richtlinienanbieterkontext vom Typ FWPM_IPSEC_AUTHIP_MM_CONTEXT.
Anmerkung
Ein gemeinsames Schlüsselmodul wird ausgehandelt, und die entsprechende MM-Richtlinie wird angewendet. AuthIP ist das bevorzugte Schlüsselmodul, wenn sowohl IKE als auch AuthIP unterstützt werden.
Fügen Sie für jeden der in Schritt 1 hinzugefügten Kontexte einen Filter mit den folgenden Eigenschaften hinzu.
Filter-Eigenschaft Wert Filterbedingungen Leer. Der gesamte Datenverkehr entspricht dem Filter. providerContextKey- GUID des mm-Anbieterkontexts, der in Schritt 1 hinzugefügt wurde. Fügen Sie einen oder beide der folgenden QM-Transportmodusrichtlinienanbieterkontexte hinzu, und legen Sie das IPSEC_POLICY_FLAG_ND_SECURE Flag fest.
- Für IKE, einen Richtlinienanbieterkontext vom Typ FWPM_IPSEC_IKE_QM_TRANSPORT_CONTEXT.
- Für AuthIP ist ein Richtlinienanbieterkontext vom Typ FWPM_IPSEC_AUTHIP_QM_TRANSPORT_CONTEXT, der die Em-Aushandlungsrichtlinie (AuthIP Extended Mode) enthält.
Anmerkung
Ein gemeinsames Schlüsselmodul wird ausgehandelt, und die entsprechende QM-Richtlinie wird angewendet. AuthIP ist das bevorzugte Schlüsselmodul, wenn sowohl IKE als auch AuthIP unterstützt werden.
Fügen Sie für jeden der in Schritt 1 hinzugefügten Kontexte einen Filter mit den folgenden Eigenschaften hinzu.
Filter-Eigenschaft Wert Filterbedingungen Leer. Der gesamte Datenverkehr entspricht dem Filter. providerContextKey- GUID des in Schritt 1 hinzugefügten QM-Anbieterkontexts. Fügen Sie einen Filter mit den folgenden Eigenschaften hinzu.
Filter-Eigenschaft Wert FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE Filterbedingung NlatUnicast- FWP_ACTION_CALLOUT_TERMINATING action.calloutKey- FWPM_CALLOUT_IPSEC_INBOUND_TRANSPORT_V{4|6} rawContext- FWPM_CONTEXT_IPSEC_INBOUND_PERSIST_CONNECTION_SECURITY Ausgenommen den ICMP-Datenverkehr von IPsec, indem Sie einen Filter mit den folgenden Eigenschaften hinzufügen.
Filter-Eigenschaft Wert FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE Filterbedingung NlatUnicast FWPM_CONDITION_IP_PROTOCOL Filterbedingung **IPPROTO_ICMP{V6}**Diese Konstanten werden in winsock2.h definiert. FWP_ACTION_PERMIT Gewichtung FWPM_WEIGHT_RANGE_IKE_EXEMPTIONS Fügen Sie einen Filter mit den folgenden Eigenschaften hinzu.
Filter-Eigenschaft Wert FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE Filterbedingung NlatUnicast FWP_ACTION_CALLOUT_TERMINATING action.calloutKey- FWPM_CALLOUT_IPSEC_OUTBOUND_TRANSPORT_V{4|6}- rawContext- FWPM_CONTEXT_IPSEC_OUTBOUND_NEGOTIATE_DISCOVER Ausgenommen den ICMP-Datenverkehr von IPsec, indem Sie einen Filter mit den folgenden Eigenschaften hinzufügen.
Filter-Eigenschaft Wert FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE Filterbedingung NlatUnicast FWPM_CONDITION_IP_PROTOCOL Filterbedingung IPPROTO_ICMP{V6}Diese Konstanten werden in winsock2.h definiert. FWP_ACTION_PERMIT Gewichtung FWPM_WEIGHT_RANGE_IKE_EXEMPTIONS Fügen Sie einen Filter mit den folgenden Eigenschaften hinzu. Dieser Filter lässt nur eingehende Verbindungsversuche zu, wenn sie durch IPsec gesichert sind.
Filter-Eigenschaft Wert FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE Filterbedingung NlatUnicast FWP_ACTION_CALLOUT_TERMINATING action.calloutKey- FWPM_CALLOUT_IPSEC_INBOUND_INITIATE_SECURE_V{4|6}- Ausgenommen den ICMP-Datenverkehr von IPsec, indem Sie einen Filter mit den folgenden Eigenschaften hinzufügen.
Filter-Eigenschaft Wert FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE Filterbedingung NlatUnicast FWPM_CONDITION_IP_PROTOCOL Filterbedingung **IPPROTO_ICMP{V6}**Diese Konstanten werden in winsock2.h definiert. FWP_ACTION_PERMIT Gewichtung FWPM_WEIGHT_RANGE_IKE_EXEMPTIONS Fügen Sie einen Filter mit den folgenden Eigenschaften hinzu. Dieser Filter ermöglicht eingehende Verbindungen mit TCP-Port 5555, wenn die entsprechenden Remoteidentitäten sowohl von SD1 als auch von SD2 zulässig sind.
Filter-Eigenschaft Wert FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE Filterbedingung NlatUnicast FWPM_CONDITION_IP_PROTOCOL Filterbedingung IPPROTO_TCPDiese Konstante wird in winsock2.h definiert. FWPM_CONDITION_IP_LOCAL_PORT Filterbedingung 5555 FWPM_CONDITION_ALE_REMOTE_MACHINE_ID SD1 FWPM_CONDITION_ALE_REMOTE_USER_ID SD2 FWP_ACTION_CALLOUT_TERMINATING action.calloutKey- FWPM_CALLOUT_IPSEC_INBOUND_INITIATE_SECURE_V{4|6}- Fügen Sie einen Filter mit den folgenden Eigenschaften hinzu. Dieser Filter blockiert alle anderen eingehenden Verbindungen mit TCP-Port 5555, die nicht mit dem vorherigen Filter übereinstimmten.
Filter-Eigenschaft Wert FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE Filterbedingung NlatUnicast FWPM_CONDITION_IP_PROTOCOL Filterbedingung IPPROTO_TCPDiese Konstante wird in winsock2.h definiert. FWPM_CONDITION_IP_LOCAL_PORT Filterbedingung 5555 FWP_ACTION_BLOCK
Bei FWPM_LAYER_IKEEXT_V{4|6} mm-Aushandlungsrichtlinie einrichten
Bei FWPM_LAYER_IPSEC_V{4|6} setup QM- und EM-Aushandlungsrichtlinie
Bei FWPM_LAYER_INBOUND_TRANSPORT_V{4|6}-Setup eingehender Paketfilterregeln
Bei FWPM_LAYER_OUTBOUND_TRANSPORT_V{4|6} richten Sie ausgehende Filterregeln pro Paket
Bei FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V{4|6}