Manual SA
Das IPsec-Richtlinienszenario (Manual Security Association, SA) ermöglicht Es Anrufern, die integrierten IPsec-Schlüsselingmodule (IKE und AuthIP) zu umgehen, indem sie IPsec-SAs direkt angeben, um jeden Netzwerkdatenverkehr zu schützen.
Ein Beispiel für ein mögliches Szenario für manuelle SA ist "Hinzufügen eines IPsec SA-Paars zum Sichern des gesamten Unicastdatenverkehrs zwischen IP-Adressen 1.1.1.1 & 2.2.2.2, mit Ausnahme von ICMP, mit dem IPsec-Transportmodus."
Anmerkung
Die folgenden Schritte müssen auf beiden Computern ausgeführt werden, auf dem IP-Adressen entsprechend festgelegt sind.
Verwenden Sie die folgende WFP-Konfiguration, um dieses Beispiel programmgesteuert zu implementieren.
Fügen Sie einen Filter mit den folgenden Eigenschaften hinzu.
Filter-Eigenschaft Wert FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE Filterbedingung NlatUnicast- FWPM_CONDITION_IP_LOCAL_ADDRESS Die entsprechende lokale Adresse (1.1.1.1 oder 2.2.2.2.2). FWPM_CONDITION_IP_REMOTE_ADDRESS Die entsprechende Remoteadresse (1.1.1.1 oder 2.2.2.2.2). FWP_ACTION_CALLOUT_TERMINATING action.calloutKey- FWPM_CALLOUT_IPSEC_INBOUND_TRANSPORT_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.
Filter-Eigenschaft Wert FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE Filterbedingung NlatUnicast FWPM_CONDITION_IP_LOCAL_ADDRESS Filterbedingung Die entsprechende lokale Adresse (1.1.1.1 oder 2.2.2.2.2). FWPM_CONDITION_IP_REMOTE_ADDRESS Filterbedingung Die entsprechende Remoteadresse (1.1.1.1 oder 2.2.2.2.2). FWP_ACTION_CALLOUT_TERMINATING action.calloutKey- FWPM_CALLOUT_IPSEC_OUTBOUND_TRANSPORT_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 - Rufen Sie IPsecSaContextCreate0mit dem Parameter outboundTraffic auf, der die IP-Adressen als 1.1.1.1 & 2.2.2.2 enthält, und ipsecFilterId als LUID des oben hinzugefügten IPsec-Popupfilters der ausgehenden Transportebene.
- Rufen Sie IPsecSaContextGetSpi0auf, wobei der parameter id enthält, der die kontext-ID enthält, die von IPsecSaContextCreate0zurückgegeben wird, und der getSpi Parameter mit den IP-Adressen als 1.1.1.1 & 2.2.2.2, und ipsecFilterId als LUID des oben hinzugefügten IPsec-Popupfilters für eingehende Transportebene. Der zurückgegebene SPI-Wert soll als eingehender SA SPI vom lokalen Computer und als ausgehender SA SPI vom entsprechenden Remotecomputer verwendet werden. Beide Computer müssen einige Out-of-Band-Mittel verwenden, um die SPI-Werte auszutauschen.
- Rufen Sie IPsecSaContextAddInbound0auf, wobei die ID Parameter enthält, der die kontext-ID enthält, die von IPsecSaContextCreate0zurückgegeben wird, und der inboundBundle Parameter, der die Eigenschaften des eingehenden SA-Bundles beschreibt (z. B. den eingehenden SA SPI, den Transformationstyp, Algorithmustypen, Schlüssel usw.).
- Rufen Sie IPsecSaContextAddOutbound0auf, wobei der parameter id enthält, der die kontext-ID enthält, die von IPsecSaContextCreate0zurückgegeben wird, und der parameter outboundBundle beschreibt die Eigenschaften des ausgehenden SA-Bündels (z. B. den ausgehenden SA SPI, den Transformationstyp, Algorithmustypen, Schlüssel usw.).
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
Einrichten von eingehenden und ausgehenden Sicherheitszuordnungen