Configurar a política IPsec/IKE para conexões VPN site a site
Este artigo descreve as etapas para configurar uma política IPsec/IKE para conexões VPN S2S (site a site) no Azure Stack Hub.
Parâmetros de política IKE e IPsec para os gateways de VPN
O padrão de protocolo IKE e IPsec dá suporte a uma ampla gama de algoritmos criptográficos em várias combinações. Para ver quais parâmetros têm suporte no Azure Stack Hub para que você possa atender aos seus requisitos de conformidade ou segurança, consulte Parâmetros IPsec/IKE.
Este artigo fornece instruções sobre como criar e configurar uma política IPsec/IKE e aplicá-la a uma conexão nova ou existente.
Considerações
Observe as seguintes considerações importantes ao usar essas políticas:
A política IPsec/IKE só funciona nas SKUs de gateway Standard e HighPerformance (baseadas em rota).
Você só pode especificar uma combinação de políticas para uma determinada conexão.
Você deve especificar todos os algoritmos e parâmetros para IKE (modo principal) e IPsec (modo rápido). A especificação de política parcial não é permitida.
Consulte as especificações do fornecedor do dispositivo VPN para garantir que a política tem suporte em seus dispositivos VPN local. As conexões site a site não poderão ser estabelecidas se as políticas forem incompatíveis.
Pré-requisitos
Antes de iniciar, verifique se você cumpre os seguintes pré-requisitos:
Uma assinatura do Azure. Se você ainda não tiver uma assinatura do Azure, poderá ativar os benefícios do assinante do MSDN ou inscrever-se em uma conta gratuita.
Os cmdlets do Azure Resource Manager PowerShell. Para obter mais informações sobre como instalar os cmdlets do PowerShell, consulte Instalar o PowerShell para o Azure Stack Hub.
Parte 1 – Criar e definir a política IPsec/IKE
Esta seção descreve as etapas necessárias para criar e atualizar a política IPsec/IKE em uma conexão VPN site a site:
Crie uma rede virtual e um gateway de VPN.
Crie um gateway de rede local para conexão entre locais.
Criar uma política de IPsec/IKE com parâmetros e algoritmos selecionados.
Crie uma conexão IPSec com a política IPsec/IKE.
Adicionar/atualizar/remover uma política de IPsec/IKE para uma conexão existente.
As instruções neste artigo ajudam você a configurar e configurar políticas IPsec/IKE, conforme mostrado na figura a seguir:
Parte 2 - Suporte para algoritmos de criptografia e restrições de chave
A tabela a seguir lista os algoritmos criptográficos com suporte e os pontos fortes de chave configuráveis pelo Azure Stack Hub:
IPsec/IKEv2 | Opções |
---|---|
Criptografia IKEv2 | AES256, AES192, AES128, DES3, DES |
Integridade do IKEv2 | SHA384, SHA256, SHA1, MD5 |
Grupo DH | ECP384, DHGroup14, DHGroup2, DHGroup1, ECP256*, DHGroup24* |
Criptografia IPsec | GCMAES256, GCMAES192, GCMAES128, AES256, AES192, AES128, DES3, DES, nenhum |
Integridade do IPsec | GCMAES256, GCMAES192, GCMAES128, SHA256 |
Grupo PFS | PFS24, ECP384, ECP256, PFS2048, PFS2, PFS1, PFSMM, None |
Tempo de vida da QM SA | (Opcional: os valores padrão serão usados se não for especificados) Segundos (inteiro; mínimo de 300/padrão de 27000 segundos) KBytes (inteiro; mín. de 1024 /padrão de 102400000 KBytes) |
Seletor de tráfego | Não há suporte para seletores de tráfego baseados em política no Azure Stack Hub. |
Observação
Definir o tempo de vida da QM SA muito baixo requer um rechaveamento desnecessário, o que pode prejudicar o desempenho.
* Esses parâmetros só estão disponíveis nos builds 2002 e posteriores.
A configuração do dispositivo VPN local deve corresponder ou conter os seguintes algoritmos e parâmetros que você especifica na política de IPsec/IKE do Azure:
- Algoritmo de criptografia IKE (Modo Principal/Fase 1).
- Algoritmo de integridade IKE (Modo Principal/Fase 1).
- Grupo DH (Modo Principal/Fase 1).
- Algoritmo de criptografia IPsec (Modo Rápido/Fase 2).
- Algoritmo de integridade IPsec (Modo Rápido/Fase 2).
- Grupo PFS (Modo Rápido/Fase 2).
- Os tempos de vida de SA são apenas especificações locais e não precisam corresponder.
Se GCMAES for usado como o algoritmo de criptografia IPsec, você deverá selecionar o mesmo algoritmo GCMAES e o comprimento da chave para integridade IPsec; por exemplo, usando GCMAES128 para ambos.
Na tabela anterior:
- IKEv2 corresponde ao Modo Principal ou Fase 1.
- O IPsec corresponde ao Modo Rápido ou à Fase 2.
- O Grupo DH especifica o Grupo Diffie-Hellmen usado no Modo Principal ou na Fase 1.
- O Grupo PFS especifica o grupo de Diffie-Hellmen usado no Modo Rápido ou fase 2.
O tempo de vida de SA do Modo Principal IKEv2 é corrigido em 28.800 segundos nos gateways de VPN do Azure Stack Hub.
A tabela abaixo lista os Grupos Diffie-Hellman correspondentes que têm suporte na política personalizada:
Grupo Diffie-Hellman | DHGroup | PFSGroup | Comprimento da chave |
---|---|---|---|
1 | DHGroup1 | PFS1 | MODP de 768 bits |
2 | DHGroup2 | PFS2 | MODP de 1024 bits |
14 | DHGroup14 DHGroup2048 |
PFS2048 | MODP de 2048 bits |
19 | ECP256* | ECP256 | ECP de 256 bits |
20 | ECP384 | ECP384 | ECP de 384 bits |
24 | DHGroup24* | PFS24 | MODP de 2048 bits |
* Esses parâmetros só estão disponíveis nos builds 2002 e superiores.
Para saber mais, confira RFC3526 e RFC5114.
Parte 3 – Criar uma nova conexão VPN site a site com a política IPsec/IKE
Esta seção percorre as etapas para criar uma conexão VPN site a site com uma política IPsec/IKE. As etapas a seguir criam a conexão, conforme mostrado na figura a seguir:
Para obter instruções passo a passo mais detalhadas para criar uma conexão VPN site a site, consulte Criar uma conexão VPN site a site.
Etapa 1 - Criar a rede virtual, o gateway de VPN e o gateway de rede local
1. Declarar variáveis
Para este exercício, comece declarando as variáveis a seguir. Substitua os espaços reservados por seus próprios valores ao configurar para produção:
$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"
2. Conectar à sua assinatura do Azure e criar um novo grupo de recursos
Alterne para o modo do PowerShell para usar os cmdlets do Gerenciador de Recursos. Para obter mais informações, consulte Conectar-se ao Azure Stack Hub com o PowerShell como um usuário.
Abra o console do PowerShell e conecte-se à sua conta; por exemplo:
Connect-AzAccount
Select-AzSubscription -SubscriptionName $Sub1
New-AzResourceGroup -Name $RG1 -Location $Location1
3. Criar a rede virtual, o gateway de VPN e o gateway de rede local
O exemplo a seguir cria a rede virtual TestVNet1, juntamente com três sub-redes e o gateway de VPN. Ao substituir valores, é importante nomear especificamente o GatewaySubnet da sub-rede do gateway. Se você usar outro nome, a criação do gateway falhará.
$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
Etapa 2 – Criar uma conexão VPN site a site com uma política IPsec/IKE
1. Criar uma política de IPsec/IKE
Este script de exemplo cria uma política IPsec/IKE com os seguintes algoritmos e parâmetros:
- IKEv2: AES128, SHA1, DHGroup14
- IPsec: AES256, SHA256, none, SA Lifetime 14400 seconds e 102400000KB
$ipsecpolicy6 = New-AzIpsecPolicy -IkeEncryption AES128 -IkeIntegrity SHA1 -DhGroup DHGroup14 -IpsecEncryption AES256 -IpsecIntegrity SHA256 -PfsGroup none -SALifeTimeSeconds 14400 -SADataSizeKilobytes 102400000
Se você usar GCMAES para IPsec, deverá usar o mesmo algoritmo GCMAES e comprimento de chave tanto para criptografia quanto para integridade IPsec.
2. Criar a conexão VPN site a site com a política IPsec/IKE
Crie uma conexão VPN site a site e aplique a política IPsec/IKE que você criou anteriormente:
$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 -IpsecPolicies $ipsecpolicy6 -SharedKey 'Azs123'
Importante
Depois que uma política IPsec/IKE é especificada em uma conexão, o gateway de VPN do Azure envia ou aceita apenas a proposta de IPsec/IKE com algoritmos criptográficos especificados e pontos fortes de chave nessa conexão específica. Verifique se o dispositivo VPN local para a conexão usa ou aceita a combinação de política exata; caso contrário, o túnel VPN site a site não pode ser estabelecido.
Parte 4 – Atualizar a política IPsec/IKE para uma conexão
A seção anterior mostrou como gerenciar a política IPsec/IKE para uma conexão site a site existente. Esta seção percorre as seguintes operações em uma conexão:
- Mostrar a política IPsec/IKE de uma conexão.
- Adicione ou atualize a política IPsec/IKE para uma conexão.
- Remova a política IPsec/IKE de uma conexão.
Observação
A política de IPsec/IKE tem suporte somente nos gateways de VPN baseados en rota Standard e HighPerformance. Ele não funciona no SKU de gateway Básico .
1. Mostrar a política de IPsec/IKE de uma conexão
O exemplo a seguir mostra como obter a política de IPsec/IKE configurada em uma conexão. Os scripts também continuam dos exercícios anteriores.
$RG1 = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$connection6.IpsecPolicies
O último comando lista a política IPsec/IKE atual configurada na conexão, se houver. O seguinte exemplo é uma saída para a conexão:
SALifeTimeSeconds : 14400
SADataSizeKilobytes : 102400000
IpsecEncryption : AES256
IpsecIntegrity : SHA256
IkeEncryption : AES128
IkeIntegrity : SHA1
DhGroup : DHGroup14
PfsGroup : None
Se não houver nenhuma política IPsec/IKE configurada, o comando $connection6.policy
obterá um retorno vazio. Isso não significa que o IPsec/IKE não esteja configurado na conexão; isso significa que não há nenhuma política de IPsec/IKE personalizada. A conexão real usa a política padrão negociada entre o dispositivo VPN no local e o gateway de VPN do Azure.
2. Adicionar e atualizar uma política de IPsec/IKE para uma conexão
As etapas para adicionar uma nova política ou atualizar uma política existente em uma conexão são as mesmas: criar uma nova política e aplicar a nova política à conexão:
$RG1 = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$newpolicy6 = New-AzIpsecPolicy -IkeEncryption AES128 -IkeIntegrity SHA1 -DhGroup DHGroup14 -IpsecEncryption AES256 -IpsecIntegrity SHA256 -PfsGroup None -SALifeTimeSeconds 14400 -SADataSizeKilobytes 102400000
$connection6.SharedKey = "AzS123"
Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection6 -IpsecPolicies $newpolicy6
Você poderá obter a conexão novamente para marcar se a política for atualizada:
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$connection6.IpsecPolicies
Você deve ver a saída da última linha, conforme mostrado no exemplo abaixo:
SALifeTimeSeconds : 14400
SADataSizeKilobytes : 102400000
IpsecEncryption : AES256
IpsecIntegrity : SHA256
IkeEncryption : AES128
IkeIntegrity : SHA1
DhGroup : DHGroup14
PfsGroup : None
3. Remover uma política de IPsec/IKE de uma conexão
Depois de remover a política personalizada de uma conexão, o gateway de VPN do Azure será revertido para a proposta padrão de IPsec/IKE e renegociará com seu dispositivo VPN local.
$RG1 = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$connection6.SharedKey = "AzS123"
$currentpolicy = $connection6.IpsecPolicies[0]
$connection6.IpsecPolicies.Remove($currentpolicy)
Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection6
Você pode usar o mesmo script para verificar se a política foi removida da conexão.