Подключение VPN-шлюз к нескольким локальным VPN-устройствам на основе политик

Эта статья поможет вам настроить VPN-шлюз Azure на основе маршрутов для подключения к нескольким локальным VPN-устройствам на основе политики, которые используют настраиваемые политики IPsec/IKE для VPN-подключений типа "сеть — сеть". Действия, описанные в этой статье, используют Azure PowerShell.

VPN-шлюзы на основе политики и маршрутов

VPN-устройства на основе политики и маршрутов отличаются способом установки селекторов трафика IPsec для подключения:

  • VPN-устройства на основе политики используют комбинации префиксов из двух сетей, чтобы определить способ шифрования и расшифровки трафика через IPsec- туннели. Обычно он основан на устройствах брандмауэра, выполняющих фильтрацию пакетов. Шифрование и расшифровка туннеля IPsec добавляются в фильтрацию пакетов и подсистему обработки.
  • VPN-устройства на основе маршрута используют селекторы трафика типа "любой к любому" (подстановочные) и позволяют таблицам пересылки и маршрута направлять трафик в различные IPsec-туннели. Обычно он построен на платформах маршрутизаторов, где каждый туннель IPsec моделиируется как сетевой интерфейс или VTI (интерфейс виртуального туннеля).

Следующие схемы выделяют две модели:

Пример VPN на основе политик

Diagram of policy-based VPN.

Пример VPN на основе маршрутов

Diagram of route-based VPN for multiple sites.

Поддержка Azure VPN-устройств на основе политики

В настоящее время Azure поддерживает оба режима VPN-шлюзов: VPN-шлюзы на основе маршрута и VPN-шлюзы на основе политики. Они основаны на разных внутренних платформах, что приводит к разным спецификациям. Дополнительные сведения о шлюзах, пропускной способности и подключениях см. в разделе "Сведения о параметрах VPN-шлюз".

Тип VPN шлюза. Gateway SKU Поддерживаемые версии IKE
Шлюз на основе политик Базовая IKEv1
Шлюз на основе маршрутов Базовая IKEv2
Шлюз на основе маршрутов VpnGw1, VpnGw2, VpnGw3, VpnGw4, VpnGw5 IKEv1 и IKEv2
Шлюз на основе маршрутов VpnGw1AZ, VpnGw2AZ, VpnGw3AZ, VpnGw4AZ, VpnGw5AZ IKEv1 и IKEv2

Ранее при работе с VPN-адресами на основе политик можно было использовать SKU "Базовый" VPN-шлюза на основе политик и подключаться только к одному локальному VPN-устройству или брандмауэру. Теперь с помощью настраиваемой политики IPsec/IKE можно использовать VPN-шлюз на основе маршрутов и подключаться к нескольким устройствам VPN или брандмауэра на основе политик. Чтобы сделать VPN-подключение на основе политик с помощью VPN-шлюза на основе маршрутов, настройте VPN-шлюз на основе маршрутов для использования селекторов трафика на основе префикса с параметром PolicyBasedTrafficSelectors.

Рекомендации

  • Чтобы включить возможность такого подключения, ваши локальные устройства VPN на основе политики должны поддерживать IKEv2 для подключения к VPN-шлюзам Azure на основе маршрута. Проверьте характеристики VPN-устройства.

  • Локальные сети, выполняющие подключение через VPN-устройства на основе политики с помощью этого механизма, могут подключаться только к виртуальной сети Azure. Подключение к другим локальным или виртуальным сетям с помощью одного VPN-шлюза Azure невозможно.

  • Параметр конфигурации является частью настраиваемой политики подключения IPsec/IKE. При включении параметра селектора трафика на основе политики вы должны указать полную политику (алгоритмы шифрования и целостности IPsec/IKE, уровни стойкости ключей и время существования SA).

На следующей схеме показано, почему транзитная маршрутизация через VPN-шлюз не работает с параметром на основе политики:

Diagram of policy-based transit.

Как показано на схеме, у VPN-шлюза Azure есть селекторы трафика из виртуальной сети для каждого локального префикса в сети, а не префиксов кросс-подключения. Например, локальный сайт 2, сайт 3 и сайт 4 могут обмениваться данными с VNet1 соответственно, но не могут подключаться через VPN-шлюз Azure друг к другу. На схеме показаны селекторы трафика между подключениями, которые недоступны в VPN-шлюзе Azure в этой конфигурации.

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

Инструкции в этой статье основаны на том же примере, который описан в статье о настройке политики IPsec/IKE для подключений типа "сеть — сеть" или "виртуальная сеть — виртуальная сеть" для установки подключения VPN типа "сеть — сеть". Это показано на схеме ниже:

Diagram shows an image of site-to-site with traffic selectors.

Чтобы включить подключение, используйте следующий рабочий процесс:

  1. Создайте виртуальную сеть, VPN-шлюз и шлюз локальной сети для распределенного подключения.
  2. Создайте политику IPsec/IKE.
  3. Примените политику при создании подключения "сеть — сеть" или "виртуальная сеть — виртуальная сеть" и включите селекторы трафика на основе политики для подключения.
  4. Если подключение уже создано, можно применить или обновить политику для существующего подключения.

Включение селекторов трафика на основе политик

В этом разделе показано, как включить селекторы трафика на основе политики для подключения. Убедитесь, что выполнены действия, описанные в части 3 статьи “Настройка политики IPsec/IKE”. В действиях, описанных в этой статье, используются те же параметры.

Создание виртуальной сети, VPN-шлюза и шлюза локальной сети

  1. Подключение. Если вы используете PowerShell локально на компьютере, войдите с помощью командлета Подключение-AzAccount. Или откройте Azure Cloud Shell в браузере.

  2. Объявите переменные. В этом упражнении мы используем следующие переменные:

    $Sub1          = "<YourSubscriptionName>"
    $RG1           = "TestPolicyRG1"
    $Location1     = "East US 2"
    $VNetName1     = "TestVNet1"
    $FESubName1    = "FrontEnd"
    $BESubName1    = "Backend"
    $GWSubName1    = "GatewaySubnet"
    $VNetPrefix11  = "10.11.0.0/16"
    $VNetPrefix12  = "10.12.0.0/16"
    $FESubPrefix1  = "10.11.0.0/24"
    $BESubPrefix1  = "10.12.0.0/24"
    $GWSubPrefix1  = "10.12.255.0/27"
    $DNS1          = "8.8.8.8"
    $GWName1       = "VNet1GW"
    $GW1IPName1    = "VNet1GWIP1"
    $GW1IPconf1    = "gw1ipconf1"
    $Connection16  = "VNet1toSite6"
    $LNGName6      = "Site6"
    $LNGPrefix61   = "10.61.0.0/16"
    $LNGPrefix62   = "10.62.0.0/16"
    $LNGIP6        = "131.107.72.22"
    
  3. Создать группу ресурсов.

    New-AzResourceGroup -Name $RG1 -Location $Location1
    
  4. Используйте приведенный ниже пример, чтобы создать виртуальную сеть TestVNet1 с тремя подсетями и VPN-шлюзом. При замене значений важно, чтобы вы назвали подсеть шлюза именем GatewaySubnet. Если вы используете другое имя, создание шлюза завершится сбоем.

    $fesub1 = New-AzVirtualNetworkSubnetConfig -Name $FESubName1 -AddressPrefix $FESubPrefix1
    $besub1 = New-AzVirtualNetworkSubnetConfig -Name $BESubName1 -AddressPrefix $BESubPrefix1
    $gwsub1 = New-AzVirtualNetworkSubnetConfig -Name $GWSubName1 -AddressPrefix $GWSubPrefix1
    
    New-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1 -Location $Location1 -AddressPrefix $VNetPrefix11,$VNetPrefix12 -Subnet $fesub1,$besub1,$gwsub1
    
    $gw1pip1    = New-AzPublicIpAddress -Name $GW1IPName1 -ResourceGroupName $RG1 -Location $Location1 -AllocationMethod Dynamic
    $vnet1      = Get-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1
    $subnet1    = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet1
    $gw1ipconf1 = New-AzVirtualNetworkGatewayIpConfig -Name $GW1IPconf1 -Subnet $subnet1 -PublicIpAddress $gw1pip1
    
    New-AzVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1 -Location $Location1 -IpConfigurations $gw1ipconf1 -GatewayType Vpn -VpnType RouteBased -GatewaySku VpnGw1
    
    New-AzLocalNetworkGateway -Name $LNGName6 -ResourceGroupName $RG1 -Location $Location1 -GatewayIpAddress $LNGIP6 -AddressPrefix $LNGPrefix61,$LNGPrefix62
    

Создание VPN-подключения S2S с политикой IPsec/IKE

  1. Создайте политику IPsec/IKE.

    Важно!

    Вам необходимо создать политику IPsec/IKE для включения параметра "UsePolicyBasedTrafficSelectors" для подключения.

    В следующем примере создается политика IPsec/IKE с этими алгоритмами и параметрами:

    • IKEv2: AES256, SHA384, DHGroup24
    • IPsec: AES256, SHA256, PFS (Нет), срок действия SA (14 400 секунд и 102 400 000 КБ).
    $ipsecpolicy6 = New-AzIpsecPolicy -IkeEncryption AES256 -IkeIntegrity SHA384 -DhGroup DHGroup24 -IpsecEncryption AES256 -IpsecIntegrity SHA256 -PfsGroup None -SALifeTimeSeconds 14400 -SADataSizeKilobytes 102400000
    
  2. Создайте VPN-подключение "сеть — сеть" с селекторами трафика на основе политики и политикой IPsec/IKE и примените политику IPsec/IKE, созданную на предыдущем шаге. Помните о дополнительном параметре -UsePolicyBasedTrafficSelectors $True, который активирует селекторы трафика на основе политики для подключения.

    $vnet1gw = Get-AzVirtualNetworkGateway -Name $GWName1  -ResourceGroupName $RG1
    $lng6 = Get-AzLocalNetworkGateway  -Name $LNGName6 -ResourceGroupName $RG1
    
    New-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1 -VirtualNetworkGateway1 $vnet1gw -LocalNetworkGateway2 $lng6 -Location $Location1 -ConnectionType IPsec -UsePolicyBasedTrafficSelectors $True -IpsecPolicies $ipsecpolicy6 -SharedKey 'AzureA1b2C3'
    
  3. После выполнения этих действий подключение VPN типа "сеть — сеть" будет использовать для подключения определенную выше политику IPsec/IKE и включит селекторы трафика на основе политики. Вы можете повторить те же действия, чтобы добавить подключения для дополнительных локальных VPN-устройств на основе политики из одного VPN-шлюза Azure.

Обновление селекторов трафика на основе политики

В этом разделе показано, как обновить параметр селекторов трафика на основе политики для существующего VPN-подключения "сеть — сеть".

  1. Получение ресурса подключения

    $RG1          = "TestPolicyRG1"
    $Connection16 = "VNet1toSite6"
    $connection6  = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
    
  2. Посмотрите на параметр селекторов трафика на основе политики. В следующей строке показано, используются ли для подключения селекторы трафика на основе политики:

    $connection6.UsePolicyBasedTrafficSelectors
    

    Если строка возвращает значение True, селекторы трафика на основе политики настроены для подключения. В противном случае возвращается значение False.

  3. После получения ресурса подключения можно активировать или деактивировать для подключения селекторы трафика на основе политики.

    • Включение

      В следующем примере включается параметр селекторов трафика на основе политики и не изменяется политика IPsec/IKE:

      $RG1          = "TestPolicyRG1"
      $Connection16 = "VNet1toSite6"
      $connection6  = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
      
      Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection6 -UsePolicyBasedTrafficSelectors $True
      
    • Отключение

      В следующем примере отключается параметр селекторов трафика на основе политики и не изменяется политика IPsec/IKE:

      $RG1          = "TestPolicyRG1"
      $Connection16 = "VNet1toSite6"
      $connection6  = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
      
      Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection6 -UsePolicyBasedTrafficSelectors $False
      

Следующие шаги

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

Дополнительные сведения о настраиваемых политиках IPsec/IKE см. в статье Настройка политики IPsec/IKE для VPN-подключений типа "сеть — сеть" или "виртуальная сеть — виртуальная сеть".