Freigeben über


Garantierte Verschlüsselung

Für das Szenario der Garantierten Verschlüsselungs-IPsec-Richtlinie ist die IPsec-Verschlüsselung für den gesamten übereinstimmenden Datenverkehr erforderlich. Diese Richtlinie muss in Verbindung mit einer der Transportmodusrichtlinienoptionen angegeben werden.

Die garantierte Verschlüsselung wird in der Regel verwendet, um vertraulichen Datenverkehr pro Anwendung zu verschlüsseln.

Ein Beispiel für ein mögliches Szenario für die garantierte Verschlüsselung ist "Sichern des gesamten Unicastdatenverkehrs mit Ausnahme von ICMP, verwendung des IPsec-Transportmodus, Aktivieren der Aushandlungsermittlung und Erfordern einer garantierten Verschlüsselung für alle Unicast-Datenverkehr, die tcp local port 5555 entsprechen."

Verwenden Sie die folgende WFP-Konfiguration, um dieses Beispiel programmgesteuert zu implementieren.

Bei FWPM_LAYER_IKEEXT_V{4|6} mm-Aushandlungsrichtlinie einrichten

  1. 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 ist ein 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.

  2. 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.

Bei FWPM_LAYER_IPSEC_V{4|6} setup QM- und EM-Aushandlungsrichtlinie

  1. 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, einen Richtlinienanbieterkontext vom Typ FWPM_IPSEC_AUTHIP_QM_TRANSPORT_CONTEXT. Dieser Kontext kann optional die AuthIP Extended Mode (EM)-Aushandlungsrichtlinie enthalten.

    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.

  2. 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.

Bei FWPM_LAYER_INBOUND_TRANSPORT_V{4|6}-Setup eingehender Paketfilterregeln

  1. 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
  2. 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

Bei FWPM_LAYER_OUTBOUND_TRANSPORT_V{4|6} richten Sie ausgehende Filterregeln pro Paket

  1. 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
  2. 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

Bei FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V{4|6}

  1. 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}-
  2. 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
  3. Fügen Sie einen Filter mit den folgenden Eigenschaften hinzu. Dieser Filter erlaubt nur eingehende Verbindungen mit TCP-Port 5555, wenn sie verschlüsselt 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
    FWP_ACTION_CALLOUT_TERMINATING
    action.calloutKey- FWPM_CALLOUT_IPSEC_INBOUND_INITIATE_SECURE_V{4|6}-
    rawContext- FWPM_CONTEXT_ALE_SET_CONNECTION_REQUIRE_IPSEC_ENCRYPTION

Bei FWPM_LAYER_ALE_AUTH_CONNECT_V{4|6} richten Sie ausgehende Filterregeln pro Verbindung

  • Fügen Sie einen Filter mit den folgenden Eigenschaften hinzu. Dieser Filter erlaubt nur ausgehende Verbindungen von TCP-Port 5555, wenn sie verschlüsselt 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
    FWP_ACTION_CALLOUT_TERMINATING
    action.calloutKey- FWPM_CALLOUT_IPSEC_ALE_CONNECT_V{4|6}
    rawContext- FWPM_CONTEXT_ALE_SET_CONNECTION_REQUIRE_IPSEC_ENCRYPTION

Beispielcode: Verwenden des Transportmodus-

ALE-Ebenen

integrierte Bezeichner für Beschriftungen

Filterbedingungen

Filterschichtbezeichner

FWPM_ACTION0

FWPM_PROVIDER_CONTEXT_TYPE