境界モードでのネゴシエーション探索トランスポート モード
境界モードの IPsec ポリシー シナリオのネゴシエーション探索トランスポート モードは、一致するすべてのトラフィックに対して IPsec トランスポート モード保護を要求します。 IKE/AuthIP ネゴシエーションが失敗した場合、受信接続と送信接続の両方がクリア テキストにフォールバックできます。
この IPsec ポリシーは、通常、IPsec 対応マシンと非 IPsec 対応マシンの両方からアクセスされるマシンで使用されます。
潜在的なネゴシエーション探索トランスポート モード シナリオの例として、「IPSEC トランスポート モードを使用して ICMP を除くすべてのユニキャスト データ トラフィックをセキュリティで保護し、境界モードでネゴシエーション検出を有効にする」があります。
この例をプログラムで実装するには、次の WFP 構成を使用します。
次の MM ポリシー プロバイダー コンテキストのいずれかまたは両方を追加します。
- IKE の場合、種類がFWPM_IPSEC_IKE_MM_CONTEXTのポリシー プロバイダー コンテキスト。
- AuthIP の場合、種類がFWPM_IPSEC_AUTHIP_MM_CONTEXTのポリシー プロバイダー コンテキスト。
手記
共通キーモジュールがネゴシエートされ、対応する MM ポリシーが適用されます。 IKE と AuthIP の両方がサポートされている場合は、AuthIP が優先されるキーモジュールです。
手順 1 で追加したコンテキストごとに、次のプロパティを含むフィルターを追加します。
Filter プロパティ 価値 フィルター条件 空。 すべてのトラフィックがフィルターと一致します。 providerContextKey 手順 1 で追加された MM プロバイダー コンテキストの GUID。 次の QM トランスポート モード ポリシー プロバイダー コンテキストのいずれかまたは両方を追加し、IPSEC_POLICY_FLAG_ND_BOUNDARY フラグを設定します。
- IKE の場合、種類が FWPM_IPSEC_IKE_QM_TRANSPORT_CONTEXTのポリシー プロバイダー コンテキスト。
- AuthIP の場合、種類が FWPM_IPSEC_AUTHIP_QM_TRANSPORT_CONTEXTのポリシー プロバイダー コンテキスト。 このコンテキストには、必要に応じて、AuthIP 拡張モード (EM) ネゴシエーション ポリシーを含めることができます。
手記
共通キー・モジュールがネゴシエートされ、対応する QM ポリシーが適用されます。 IKE と AuthIP の両方がサポートされている場合は、AuthIP が優先されるキーモジュールです。
手順 1 で追加したコンテキストごとに、次のプロパティを含むフィルターを追加します。
Filter プロパティ 価値 フィルター条件 空。 すべてのトラフィックがフィルターと一致します。 providerContextKey 手順 1 で追加された QM プロバイダー コンテキストの GUID。 次のプロパティを含むフィルターを追加します。
Filter プロパティ 価値 フィルター条件の FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE 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 次のプロパティを持つフィルターを追加して、IPsec から ICMP トラフィックを除外します。
Filter プロパティ 価値 フィルター条件の FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE NlatUnicast フィルター条件の FWPM_CONDITION_IP_PROTOCOL **IPPROTO_ICMP{V6}**これらの定数は winsock2.h で定義されます。 action.type を する FWP_ACTION_PERMIT 重み を する FWPM_WEIGHT_RANGE_IKE_EXEMPTIONS 次のプロパティを含むフィルターを追加します。
Filter プロパティ 価値 フィルター条件の FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE NlatUnicast action.type を する FWP_ACTION_CALLOUT_TERMINATING action.calloutKey FWPM_CALLOUT_IPSEC_OUTBOUND_TRANSPORT_V{4|6} rawContext を する FWPM_CONTEXT_IPSEC_OUTBOUND_NEGOTIATE_DISCOVER 次のプロパティを持つフィルターを追加して、IPsec から ICMP トラフィックを除外します。
Filter プロパティ 価値 フィルター条件の FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE NlatUnicast フィルター条件の FWPM_CONDITION_IP_PROTOCOL **IPPROTO_ICMP{V6}**これらの定数は winsock2.h で定義されます。 action.type を する FWP_ACTION_PERMIT 重み を する FWPM_WEIGHT_RANGE_IKE_EXEMPTIONS
FWPM_LAYER_IKEEXT_V{4|6} で MM ネゴシエーション ポリシー を設定する
FWPM_LAYER_IPSEC_V{4|6} で QM と EM ネゴシエーション ポリシーの を設定する
at FWPM_LAYER_INBOUND_TRANSPORT_V{4|6} では、パケットごとの受信フィルター規則を設定
FWPM_LAYER_OUTBOUND_TRANSPORT_V{4|6} でパケットごとの送信フィルター規則を設定
手記
ネゴシエーション探索トランスポート モードとは対照的に、境界モード ポリシーのネゴシエーション探索トランスポート モードでは、FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V{4|6} 層にフィルターを追加する必要はありません。このポリシーでは、受信保護されていないクリア テキスト接続が許可されるためです。