Transportmodus für die Verhandlungsermittlung
Das IPsec-Richtlinienszenario für den Verhandlungsermittlungs-Transportmodus erfordert den IPsec-Transportmodusschutz für den gesamten übereinstimmenden eingehenden Datenverkehr und fordert IPsec-Schutz für den übereinstimmenden ausgehenden Datenverkehr an. Ausgehende Verbindungen können daher auf Klartext zurückfallen, eingehende Verbindungen hingegen nicht.
Wenn der Hostcomputer mit dieser Richtlinie eine neue ausgehende Verbindung versucht und keine IPsec SA vorhanden ist, die dem Datenverkehr entspricht, sendet der Host die Pakete gleichzeitig in Klartext und startet eine IKE- oder AuthIP-Aushandlung. Wenn die Aushandlung erfolgreich ist, wird die Verbindung auf IPsec-geschützt aktualisiert. Andernfalls bleibt die Verbindung im Klartext. Sobald IPsec geschützt ist, kann eine Verbindung nie auf Klartext herabgestuft werden.
Der Transportmodus für die Aushandlungsermittlung wird in der Regel in Umgebungen verwendet, die sowohl IPsec-fähige als auch Nicht-IPsec-fähige Computer enthalten.
Ein Beispiel für ein mögliches Szenario für den Transportmodus für die Verhandlungsermittlung ist "Sichern des gesamten Unicastdatenverkehrs mit Ausnahme von ICMP mithilfe des IPsec-Transportmodus und Aktivieren der Aushandlungsermittlung".
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 ist ein Richtlinienanbieterkontext vom Typ FWPM_IPSEC_IKE_MM_CONTEXT.
- Für AuthIP ist ein Richtlinienanbieterkontext vom Typ FWPM_IPSEC_AUTHIP_MM_CONTEXT.
Hinweis
Es wird ein gemeinsames Schlüsselmodul ausgehandelt und die entsprechende MM-Richtlinie angewendet. AuthIP ist das bevorzugte Schlüsselmodul, wenn sowohl IKE als auch AuthIP unterstützt werden.
Fügen Sie für jeden in Schritt 1 hinzugefügten Kontext 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 MM-Anbieterkontexts. Fügen Sie einen oder beide der folgenden Qm-Transportmodus-Richtlinienanbieterkontexte hinzu, und legen Sie das flag IPSEC_POLICY_FLAG_ND_SECURE fest.
- Für IKE ist ein Richtlinienanbieterkontext vom Typ FWPM_IPSEC_IKE_QM_TRANSPORT_CONTEXT.
- Für AuthIP ist ein Richtlinienanbieterkontext vom Typ FWPM_IPSEC_AUTHIP_QM_TRANSPORT_CONTEXT. Dieser Kontext kann optional die AuthIP-Aushandlungsrichtlinie im erweiterten Modus (EM) enthalten.
Hinweis
Es wird ein gemeinsames Schlüsselmodul ausgehandelt und die entsprechende QM-Richtlinie angewendet. AuthIP ist das bevorzugte Schlüsselmodul, wenn sowohl IKE als auch AuthIP unterstützt werden.
Fügen Sie für jeden in Schritt 1 hinzugefügten Kontext 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 action.type FWP_ACTION_CALLOUT_TERMINATING action.calloutKey FWPM_CALLOUT_IPSEC_INBOUND_TRANSPORT_V{4|6} rawContext FWPM_CONTEXT_IPSEC_INBOUND_PERSIST_CONNECTION_SECURITY Befreien Sie 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. action.type FWP_ACTION_PERMIT weight 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 action.type FWP_ACTION_CALLOUT_TERMINATING action.calloutKey FWPM_CALLOUT_IPSEC_OUTBOUND_TRANSPORT_V{4|6} rawContext FWPM_CONTEXT_IPSEC_OUTBOUND_NEGOTIATE_DISCOVER Befreien Sie 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. action.type FWP_ACTION_PERMIT weight FWPM_WEIGHT_RANGE_IKE_EXEMPTIONS Fügen Sie einen Filter mit den folgenden Eigenschaften hinzu. Dieser Filter lässt eingehende Verbindungsversuche nur zu, wenn sie durch IPsec gesichert sind.
Filter-Eigenschaft Wert FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE Filterbedingung NlatUnicast action.type FWP_ACTION_CALLOUT_TERMINATING action.calloutKey FWPM_CALLOUT_IPSEC_INBOUND_INITIATE_SECURE_V{4|6} Lassen Sie ICMP-Datenverkehr von IPsec aus, 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 sind in winsock2.h definiert. action.type FWP_ACTION_PERMIT weight FWPM_WEIGHT_RANGE_IKE_EXEMPTIONS
Einrichten der MM-Aushandlungsrichtlinie unter FWPM_LAYER_IKEEXT_V{4|6}
Richten Sie FWPM_LAYER_IPSEC_V{4|6} eine Qm- und EM-Verhandlungsrichtlinie ein.
Richten Sie bei FWPM_LAYER_INBOUND_TRANSPORT_V{4|6} Eingehende Filterregeln pro Paket ein.
Richten Sie bei FWPM_LAYER_OUTBOUND_TRANSPORT_V{4|6} Regeln für die Paketfilterung für ausgehenden Datenverkehr ein.
Richten Sie bei FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V{4|6} Eingehende Filterregeln pro Verbindung ein.