Настройка транспортного режима IPsec для частного пиринга ExpressRoute

В этой статье показано, как создать туннели IPsec в режиме транспорта через частный пиринг ExpressRoute. Туннель соединяет виртуальные машины Azure под управлением Windows и локальные узлы Windows. Действия, описанные в этой статье, используют объекты групповой политики для этой конфигурации. Хотя вы можете создать эту конфигурацию без использования подразделений и объектов групповой политики, сочетание подразделений и объектов групповой политики упрощает управление политиками безопасности и позволяет быстро масштабироваться. В этих шагах предполагается, что у вас уже есть конфигурация Active Directory и вы знакомы с использованием OU и GPO.

Об этой конфигурации.

В конфигурации, описанной в следующих шагах, используется одна виртуальная сеть Azure с ExpressRoute для частного пиринга. Однако эта конфигурация может охватывать другие виртуальные сети Azure и локальные сети. Эта статья поможет определить политику шифрования IPsec, которую можно применить к группе виртуальных машин Azure или локальных узлов. Эти виртуальные машины Azure или локальные узлы являются частью одного подразделения. Настройте шифрование между виртуальными машинами Azure (vm1 и vm2) и локальным узлом host1 только для трафика HTTP для конечного порта 8080. Вы можете создать различные типы политики IPsec на основе ваших требований.

Работа с организационными единицами

Вы отправляете политику безопасности, связанную с организационной единицей (OU), на компьютеры с помощью групповой политики (GPO). Далее представлены несколько преимуществ использования организационных единиц (ОЕ) по сравнению с применением политик к одному хосту:

  • Связывание политики с Организационной единицей гарантирует, что компьютеры, относящиеся к одной Организационной единице, получают одинаковую политику.
  • Изменение политики безопасности, связанной с OU, применяет изменения ко всем узлам в OU.

Диаграммы

На следующей диаграмме показано взаимодействие и назначенное пространство IP-адресов. Виртуальные машины Azure и локальный узел запускают Windows Server 2016. Виртуальные машины Azure и локальный узел host1 являются частью одного домена. Виртуальные машины Azure и локальные узлы могут корректно разрешать имена, используя DNS.

Схема сетевой топологии для режима транспорта IPsec через ExpressRoute.

На этой диаграмме показаны туннели IPsec в процессе передачи в частном пиринге ExpressRoute.

Схема интересного трафика IPsec в частном пиринге ExpressRoute.

Работа с политикой IPsec

В Windows вы связываете шифрование с политикой IPsec. Политика IPsec определяет, какой IP-трафик защищен и какой механизм безопасности применяется к ip-пакетам. Политики IPsec состоят из списков фильтров, действий фильтра и правил безопасности.

При настройке политики IPsec важно понимать следующую терминологию:

  • Политика IPsec. Коллекция правил. Только одна политика может быть активна ("назначена") в любой момент времени. Каждая политика может иметь одно или несколько правил. Все они могут быть активны одновременно. Компьютер может одновременно иметь только одну активную политику IPsec. Однако в политике IPsec можно определить несколько действий для разных ситуаций. Каждый набор правил IPsec связан со списком фильтров, который влияет на тип сетевого трафика, к которому применяется правило.

  • Списки фильтров: Список фильтров — это пакет из одного или нескольких фильтров. Один список может содержать несколько фильтров. Фильтр определяет, заблокирована ли связь, разрешена или защищена на основе таких критериев, как диапазоны IP-адресов, протоколы или определенные порты. Каждый фильтр соответствует определенному набору условий; например, пакеты, отправленные из определенной подсети на конкретный компьютер в конкретном порту назначения. Когда сетевые условия соответствуют одному или нескольким из этих фильтров, список фильтров активируется. Вы определяете каждый фильтр внутри определенного списка фильтров. Фильтры не могут использоваться в разных списках фильтров. Однако вы можете включить указанный список фильтров в несколько политик IPsec.

  • Действия фильтра: Действие фильтра — это метод безопасности, который определяет набор алгоритмов безопасности, протоколов и ключей, предлагаемых компьютером во время переговоров IKE. Действия фильтра — это списки методов безопасности, ранжированные в порядке предпочтения. Когда компьютер согласовывает сеанс IPsec, он принимает или отправляет предложения на основе параметра безопасности, хранящегося в списке действий фильтра.

  • Правила безопасности. Правила определяют способ и время обеспечения защиты во время обмена данными со стороны политики IPsec. В нем используются списки фильтров и действия фильтра для создания правила IPsec, создающего подключение IPsec. Каждая политика может иметь одно или несколько правил. Все они могут быть активны одновременно. Каждое правило содержит список IP-фильтров и коллекцию действий безопасности, которые выполняются после сопоставления с этим списком фильтров:

    • Действия IP-фильтра
    • методы проверки подлинности;
    • Параметры IP-туннеля
    • Типы подключений

Схема структуры политики Windows IPsec.

Перед началом работы

Необходимо выполнить следующие условия.

  • У вас должна быть работоспособная конфигурация Active Directory, которую вы сможете использовать для реализации параметров групповой политики. Дополнительные сведения об объектах групповой политики см. в объекты групповой политики.

  • Вам потребуется активный канал ExpressRoute.

    • Дополнительные сведения о настройке каналов ExpressRoute см. в статье о создании канала ExpressRoute.
    • Убедитесь, что поставщик услуг связи активирует канал.
    • Убедитесь, что для канала настроен частный пиринг Azure. Инструкции по маршрутизации см. в статье Настройка маршрутизации.
    • Убедитесь, что вы создали и полностью подготовили виртуальную сеть и шлюз виртуальной сети. Следуйте инструкциям по созданию шлюза виртуальной сети для ExpressRoute. Шлюз виртуальной сети для ExpressRoute использует шлюз GatewayType ExpressRoute, а не VPN.
  • Шлюз виртуальной сети ExpressRoute должен быть подключен к каналу ExpressRoute. Дополнительные сведения см. в статье Подключение виртуальной сети к каналу ExpressRoute.

  • Убедитесь, что вы развернули виртуальные машины Windows Azure в виртуальной сети.

  • Убедитесь, что между локальными узлами и виртуальными машинами Azure установлено подключение.

  • Убедитесь, что виртуальные машины Windows Azure и локальные узлы могут использовать DNS для разрешения имен надлежащим образом.

Рабочий процесс

  1. Создайте объект групповой политики и свяжите его с организационной единицей.
  2. Определите действие фильтра IPsec.
  3. Определите список фильтров IPsec.
  4. Создайте политику IPsec с правилами безопасности.
  5. Назначьте GPO IPsec для OU.

Пример значений

  • Имя домена: ipsectest.com

  • OU: IPSecOU

  • Локальный компьютер Windows: host1

  • Виртуальные машины Windows Azure: vm1, vm2

1. Создание объекта групповой политики

  1. Откройте оснастку управления групповыми политиками. Создайте новый объект групповой политики, связанный с организационной единицей. Затем найдите организационную единицу, к которой вы связываете объект групповой политики. В примере организационная единица называется IPSecOU.

  2. Выберите организационную единицу (OU) и щелкните правой кнопкой мыши. В раскрывающемся списке выберите Создать объект групповой политики в этом домене и связать его здесь....

  3. Имя объекта групповой политики должно быть интуитивно понятным, чтобы можно было легко найти его позже. Нажмите кнопку ОК для создания и связывания объекта групповой политики.

    Снимок экрана: присвоение имени объекту групповой политики, созданному для подразделения.

Чтобы применить объект групповой политики к подразделению, свяжите объект групповой политики с подразделением и включите ссылку.

  1. Найдите объект групповой политики, который вы создали. Щелкните правой кнопкой мыши и выберите "Изменить " в раскрывающемся списке.

  2. Выберите "Включить ссылку", чтобы применить объект групповой политики к подразделению.

    Скриншот включения ссылки GPO.

3. Определение действия фильтрации IP

  1. В раскрывающемся меню щелкните правой кнопкой мыши Политика безопасности IP в Active Directory, а затем выберите Управление списками фильтров IP и действиями фильтров....

    Снимок экрана: управление списками IP-фильтров и действиями фильтра.

  2. В меню "Управление действиями фильтра" нажмите кнопку "Добавить".

    Снимок экрана: добавление действия фильтра.

  3. В мастере действий фильтра безопасности IP нажмите кнопку "Далее".

    Снимок экрана мастера действия фильтра безопасности IP-адресов.

  4. Назовите действие фильтра интуитивно понятным именем, чтобы его можно было найти позже. В этом примере фильтр называется myEncryption. Вы также можете добавить описание. Затем выберите Далее.

    Снимок экрана: именование действия фильтра.

  5. Согласование безопасности позволяет определить поведение в случае, если связь IPsec невозможно установить с другим компьютером. Выберите "Согласование безопасности" и нажмите кнопку "Далее".

    Снимок экрана: параметры действия фильтра согласования безопасности.

  6. При взаимодействии с компьютерами, которые не поддерживают IPsec, выберите "Не разрешать незащищенное взаимодействие" и нажмите кнопку "Далее".

    Снимок экрана, показывающий указание поведения для незащищенных подключений.

  7. В IP-трафик и безопасность выберите Пользовательский, а затем выберите Параметры....

    Снимок экрана: параметры метода безопасности.

  8. В параметрах пользовательского метода безопасности выберите целостность данных и шифрование (ESP): SHA1, 3DES. Затем нажмите OK.

    Снимок экрана: параметры пользовательского метода безопасности.

  9. В разделе "Управление действиями фильтра" вы увидите, что добавлено действие фильтра myEncryption . Выберите Закрыть.

    Снимок экрана: список действий фильтра с добавлением myEncryption.

4. Определение списка фильтров IP

Создайте список фильтров, который указывает зашифрованный трафик HTTP для конечного порта 8080.

  1. Используйте список IP-фильтров , чтобы указать, какие типы трафика должны быть зашифрованы. На вкладке Управление списками фильтров IP нажмите Добавить, чтобы добавить новый список IP-фильтров.

    Снимок экрана: добавление нового списка IP-фильтров.

  2. В поле "Имя": введите имя списка IP-фильтров. Например, azure-onpremises-HTTP8080. а затем щелкните Добавить.

    Снимок экрана: добавление HTTP-трафика в фильтр IP-адресов.

  3. На странице Описание IP-фильтра и свойство "Отраженный" выберите Отраженный. Параметр "Отраженный" соответствует пакетам, идущим в обоих направлениях, что позволяет осуществлять двустороннюю связь. Затем выберите Далее.

    Снимок экрана: выбор зеркального свойства.

  4. На странице Источник IP-трафика в раскрывающемся списке Адрес источника пакетов: выберите Определенный IP-адрес или подсеть.

    Снимок экрана: выбор адреса исходной подсети.

  5. Укажите IP-адрес источника или подсеть: ip-трафика , а затем нажмите кнопку "Далее".

    Снимок экрана: параметры исходной сети.

  6. Укажите адрес назначения: IP-адрес или подсеть. Затем выберите Далее.

    Снимок экрана: параметры конечной сети.

  7. На страницеТип протокола IP выберите TCP. Затем выберите Далее.

  8. На странице Порт протокола IP выберите Пакеты из любого порта и Пакеты на этот порт:. Введите 8080 в текстовое поле. Эти параметры указывают шифрование только HTTP-трафика на целевом порту 8080. Затем выберите Далее.

    Снимок экрана: параметры исходного и целевого портов.

  9. Просмотрите список IP-фильтров. Конфигурация списка IP-фильтров azure-onpremises-HTTP8080 активирует шифрование всего трафика, который соответствует следующим условиям:

    • Любой исходный адрес в 10.0.1.0/24 (Azure Subnet2).
    • Любой адрес назначения в 10.2.27.0/25 (в локальной подсети).
    • Протокол TCP.
    • Конечный порт 8080.

    Снимок экрана: конфигурация списка IP-фильтров.

5. Изменение списка IP-фильтров

Чтобы шифровать один и тот же тип трафика из локального узла к виртуальной машине Azure, нужен второй фильтр IP. Выполните те же действия, которые использовались для настройки первого фильтра IP, чтобы создать второй. Единственными отличиями являются подсеть источника и целевая подсеть.

  1. Чтобы добавить новый IP-фильтр в список IP-фильтров, выберите Изменить.

    Снимок экрана: список IP-фильтров с HTTP-трафиком.

  2. В списке IP-фильтров нажмите кнопку "Добавить".

    Снимок экрана добавления второй записи фильтра по IP.

  3. Создайте второй IP-фильтр, используя настройки в следующем примере:

    Снимок экрана: второй параметр записи IP-фильтра.

  4. После создания второго IP-фильтра список IP-фильтров выглядит следующим образом:

    Снимок экрана: список IP-фильтров с двумя записями.

Если требуется шифрование между локальным расположением и подсетью Azure для защиты приложения, вам не нужно изменять существующий список IP-фильтров. Вместо этого добавьте новый список IP-фильтров. Связывание двух или нескольких списков IP-фильтров с одной политикой IPsec обеспечивает большую гибкость. Можно изменить или удалить один список IP-фильтров, не затрагивая другие списки IP-фильтров.

6. Создание политики безопасности IPsec

Создайте политику IPsec с правилами безопасности.

  1. Выберите политики IPSecurity в Active Directory, которые вы связали с организационной единицей. Щелкните правой кнопкой мыши и выберите Create IP Security Policy (Создать политику IP-безопасности).

    Снимок экрана: создание политики безопасности IP-адресов.

  2. Введите имя политики безопасности, например policy-azure-onpremises. Затем выберите Далее.

    Снимок экрана: название политики безопасности IPsec.

  3. Нажмите кнопку "Далее ", не выбрав флажок.

    Снимок экрана мастера политики IPsec.

  4. Убедитесь, что установлен флажок "Изменить свойства " и нажмите кнопку "Готово".

    Снимок экрана: изменение политики безопасности IPsec.

7. Изменение политики безопасности IPsec

Добавьте в политику IPsec список IP-фильтров и действие фильтра , настроенное ранее.

  1. На вкладке "Правила " в свойствах политики HTTP нажмите кнопку "Добавить".

    Снимок экрана: добавление нового правила безопасности в политику IPsec.

  2. На Приветствии нажмите Далее.

    Снимок экрана: создание нового правила безопасности.

  3. Правило предоставляет параметр для определения режима IPsec: туннельный режим или режим транспортировки.

    • В режиме туннеля исходный пакет инкапсулируется с набором IP-заголовков. В этом режиме обеспечивается защита внутренней информации маршрутизации путем шифрования IP-заголовка исходного пакета. Режим туннеля широко реализуется между шлюзами в сценариях VPN типа "сеть — сеть". Режим туннеля чаще всего используется для сквозного шифрования между узлами.

    • В транспортном режиме шифруются только полезная нагрузка и трейлер ESP; IP-заголовок исходного пакета не шифруется. В транспортном режиме источник и назначение IP-адреса пакетов не изменяются.

    Выберите This rule does not specify a tunnel(Это правило не определяет туннель), а затем нажмите кнопку Далее.

    Снимок экрана: выбор режима транспорта.

  4. Тип сети определяет, какие сетевые подключения связаны с политикой безопасности. Выберите Все сетевые подключения, а затем нажмите Далее.

    Снимок экрана: выбор типа сети.

  5. Выберите список ip-фильтров, созданный ранее, azure-onpremises-HTTP8080, а затем нажмите кнопку "Далее".

    Снимок экрана: выбор существующего списка IP-фильтров.

  6. Выберите существующее действие фильтра myEncryption , созданное ранее.

    Снимок экрана: выбор существующего действия фильтра.

  7. Windows поддерживает четыре различных типа проверки подлинности: Kerberos, сертификаты, NTLMv2 и предварительный ключ. Так как вы работаете с узлами, присоединенными к домену, выберите Active Directory по умолчанию (протокол Kerberos V5) и нажмите кнопку "Далее".

    Снимок экрана: выбор метода проверки подлинности Kerberos.

  8. Новая политика создает правило безопасности: azure-onpremises-HTTP8080. Нажмите ОК.

    Снимок экрана: завершенная политика безопасности.

Для политики IPsec требуется, чтобы все HTTP-соединения на целевом порту 8080 использовали режим транспортировки IPsec. Так как ПРОТОКОЛ HTTP является протоколом с четким текстом, включение политики безопасности гарантирует, что данные шифруются при передаче через частный пиринг ExpressRoute. Политика IPsec для Active Directory более сложная, чем настройка брандмауэра Windows с повышенной безопасностью. Тем не менее, он позволяет более точно настраивать подключение IPsec.

8. Назначьте объект групповой политики IPsec для организационного подразделения

  1. Просмотрите политику. Групповая политика безопасности определена, но еще не назначена.

    Снимок экрана политики IPsec, связанной с объектом групповой политики, но еще не назначенной.

  2. Чтобы назначить групповую политику безопасности подразделению IPSecOU , щелкните правой кнопкой мыши политику безопасности и выберите "Назначить". Каждый компьютер, принадлежащий подразделению, имеет назначенную групповую политику безопасности.

    Снимок экрана политики IPsec, назначенной GPO.

Проверка шифрования трафика

Чтобы проверить объект групповой политики шифрования, примененный к подразделению, установите IIS на всех виртуальных машинах Azure и на host1. Каждый сервер IIS настраивается для ответа на HTTP-запросы через порт 8080. Чтобы проверить шифрование, можно установить анализатор трафика (например, Wireshark) на всех компьютерах в организационной единице. Сценарий PowerShell работает как клиент HTTP для создания HTTP-запросов через порт 8080:

$url = "http://10.0.1.20:8080"
while ($true) {
try {
[net.httpWebRequest]
$req = [net.webRequest]::create($url)
$req.method = "GET"
$req.ContentType = "application/x-www-form-urlencoded"
$req.TimeOut = 60000

$start = get-date
[net.httpWebResponse] $res = $req.getResponse()
$timetaken = ((get-date) - $start).TotalMilliseconds

Write-Output $res.Content
Write-Output ("{0} {1} {2}" -f (get-date), $res.StatusCode.value__, $timetaken)
$req = $null
$res.Close()
$res = $null
} catch [Exception] {
Write-Output ("{0} {1}" -f (get-date), $_.ToString())
}
$req = $null

# uncomment the line below and change the wait time to add a pause between requests
#Start-Sleep -Seconds 1
}

Следующая запись сетевых данных отображает результаты для локального узла host1 с фильтром отображения ESP для соответствия только зашифрованному трафику:

Снимок экрана: зашифрованный трафик IPsec.

Если вы выполняете сценарий PowerShell в локальной среде (HTTP-клиент), запись сетевых данных на виртуальной машине Azure отображает аналогичную трассировку.

Дальнейшие действия

Дополнительные сведения об ExpressRoute см. в статье Вопросы и ответы по ExpressRoute.