Гарантированное шифрование
Для сценария политики IPsec гарантированного шифрования требуется шифрование IPsec для всего соответствующего трафика. Эта политика должна быть указана в сочетании с одним из вариантов политики режима транспорта.
Гарантированное шифрование обычно используется для шифрования конфиденциального трафика на основе каждого приложения.
Примером сценария гарантированного шифрования является "Защита всего одноадресного трафика данных, кроме ICMP, с помощью режима транспорта IPsec, включение обнаружения переговоров и требование гарантированного шифрования для всего одноадресного трафика, соответствующего локальному порту TCP 5555".
Чтобы реализовать этот пример программным способом, используйте следующую конфигурацию МПП.
Добавьте один или оба из следующих контекстов поставщика политик MM.
- Для IKE контекст поставщика политик типа FWPM_IPSEC_IKE_MM_CONTEXT.
- Для AuthIP контекст поставщика политик типа FWPM_IPSEC_AUTHIP_MM_CONTEXT.
Заметка
Будет согласован общий модуль ключей, и будет применена соответствующая политика MM. AuthIP — это предпочтительный модуль ключей, если поддерживаются IKE и AuthIP.
Для каждого из контекстов, добавленных на шаге 1, добавьте фильтр со следующими свойствами.
Свойство filter Ценность Условия фильтрации Пустой. Весь трафик будет соответствовать фильтру. providerContextKey GUID контекста поставщика MM, добавленного на шаге 1. Добавьте один или оба из следующих контекстов поставщика политики режима транспорта QM и задайте флаг IPSEC_POLICY_FLAG_ND_SECURE.
- Для IKE контекст поставщика политик типа FWPM_IPSEC_IKE_QM_TRANSPORT_CONTEXT.
- Для AuthIP контекст поставщика политик типа FWPM_IPSEC_AUTHIP_QM_TRANSPORT_CONTEXT. Этот контекст может содержать политику согласования расширенного режима AuthIP (EM).
Заметка
Будет согласован общий модуль ключей, и будет применена соответствующая политика QM. AuthIP — это предпочтительный модуль ключей, если поддерживаются IKE и AuthIP.
Для каждого из контекстов, добавленных на шаге 1, добавьте фильтр со следующими свойствами.
Свойство filter Ценность Условия фильтрации Пустой. Весь трафик будет соответствовать фильтру. providerContextKey GUID контекста поставщика QM, добавленного на шаге 1. Добавьте фильтр со следующими свойствами.
Свойство 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 Исключите трафик ICMP из IPsec, добавив фильтр со следующими свойствами.
Свойство 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 Исключите трафик ICMP из IPsec, добавив фильтр со следующими свойствами.
Свойство 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 Добавьте фильтр со следующими свойствами. Этот фильтр разрешает попытки входящего подключения только в том случае, если они защищены IPsec.
Свойство filter Ценность условие фильтрации FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE NlatUnicast action.type FWP_ACTION_CALLOUT_TERMINATING action.calloutKey FWPM_CALLOUT_IPSEC_INBOUND_INITIATE_SECURE_V{4|6} Исключите трафик ICMP из IPsec, добавив фильтр со следующими свойствами.
Свойство 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 Добавьте фильтр со следующими свойствами. Этот фильтр разрешает только входящие подключения к TCP-порту 5555, если они зашифрованы.
Свойство filter Ценность условие фильтрации FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE NlatUnicast условие фильтрации FWPM_CONDITION_IP_PROTOCOL IPPROTO_TCPЭта константа определена в winsock2.h. условие фильтрации FWPM_CONDITION_IP_LOCAL_PORT 5555 action.type FWP_ACTION_CALLOUT_TERMINATING action.calloutKey FWPM_CALLOUT_IPSEC_INBOUND_INITIATE_SECURE_V{4|6} rawContext FWPM_CONTEXT_ALE_SET_CONNECTION_REQUIRE_IPSEC_ENCRYPTION Добавьте фильтр со следующими свойствами. Этот фильтр разрешает только исходящие подключения из TCP-порта 5555, если они зашифрованы.
Свойство filter Ценность условие фильтрации FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE NlatUnicast условие фильтрации FWPM_CONDITION_IP_PROTOCOL IPPROTO_TCPЭта константа определена в winsock2.h. условие фильтрации FWPM_CONDITION_IP_LOCAL_PORT 5555 action.type FWP_ACTION_CALLOUT_TERMINATING action.calloutKey FWPM_CALLOUT_IPSEC_ALE_CONNECT_V{4|6} rawContext FWPM_CONTEXT_ALE_SET_CONNECTION_REQUIRE_IPSEC_ENCRYPTION
FWPM_LAYER_IKEEXT_V{4|6} настройте политику согласования MM
FWPM_LAYER_IPSEC_V{4|6} настройте политику QM и политики ведения переговоров EM
FWPM_LAYER_INBOUND_TRANSPORT_V{4|6} настройте правила фильтрации входящих пакетов
в FWPM_LAYER_OUTBOUND_TRANSPORT_V{4|6} настройте правила фильтрации исходящего трафика на пакеты
В FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V{4|6} настройте правила фильтрации входящих подключений
FWPM_LAYER_ALE_AUTH_CONNECT_V{4|6} настройте правила фильтрации исходящих подключений