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 site a site (S2S) no Azure Stack Hub.
Parâmetros de política IPsec e IKE para gateways VPN
O padrão de protocolo IPsec e IKE suporta uma ampla gama de algoritmos criptográficos em várias combinações. Para ver quais parâmetros são suportados no Azure Stack Hub para que você possa satisfazer 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 nos SKUs de gateway Standard e HighPerformance (baseado em rota).
- Você só pode especificar uma combinação de política para uma determinada conexão.
- Você deve especificar todos os algoritmos e parâmetros para IKE (Modo Principal) e IPsec (Modo Rápido). Não é permitida a especificação parcial da política.
- Consulte as especificações do fornecedor do dispositivo VPN para garantir que a política seja suportada em seus dispositivos VPN locais. Não é possível estabelecer conexões site a site se as políticas forem incompatíveis.
Pré-requisitos
Antes de começar, certifique-se de que tem os seguintes pré-requisitos:
- Uma assinatura do Azure. Se ainda não tiver uma subscrição do Azure, pode inscrever-se numa conta gratuita .
- Os cmdlets do PowerShell do Azure Resource Manager. Para obter mais informações sobre como instalar os cmdlets do PowerShell, consulte Install PowerShell for 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 VPN.
- Crie um gateway de rede local para conexão entre locais.
- Crie uma política IPsec/IKE com algoritmos e parâmetros selecionados.
- Crie uma conexão IPSec com a diretiva IPsec/IKE.
- Adicione/atualize/remova uma política IPsec/IKE para uma conexão existente.
As instruções neste artigo ajudam a configurar políticas IPsec/IKE, conforme mostrado na figura a seguir:
Parte 2 - Algoritmos criptográficos suportados e pontos fortes das chaves
A tabela a seguir lista os algoritmos criptográficos com suporte e os pontos fortes das chaves configuráveis pelo Azure Stack Hub:
IPsec/IKEv2 | Opções |
---|---|
Encriptação 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 IPsec | GCMAES256, GCMAES192, GCMAES128, SHA256 |
Grupo PFS | PFS24, ECP384, ECP256, PFS2048, PFS2, PFS1, PFSMM, Nenhum |
Tempo de vida útil da QM SA | (Opcional: os valores padrão são usados se não forem especificados) Segundos (inteiro; min. 300/padrão 27000 segundos) KBytes (inteiro; min. 1024/padrão 102400000 KBytes) |
Seletor de Tráfego | Não há suporte para seletores de tráfego baseados em políticas no Azure Stack Hub. |
Observação
Ajustar o tempo de vida do QM SA para um valor muito baixo requer uma reconfiguração desnecessária, o que pode prejudicar o desempenho.
Sua configuração de dispositivo VPN local deve corresponder ou conter os seguintes algoritmos e parâmetros especificados na política IPsec/IKE do Azure:
- Algoritmo de encriptação IKE (Modo Principal/Fase 1).
- Algoritmo de integridade IKE (Modo Principal/Fase 1).
- Grupo DH (Modo Principal/Fase 1).
- Algoritmo de encriptação 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 da SA são apenas especificações locais e não precisam corresponder.
Se o GCMAES for usado como o algoritmo de criptografia IPsec, você deverá selecionar o mesmo algoritmo GCMAES e o mesmo comprimento de chave para integridade IPsec; por exemplo, usando GCMAES128 para ambos.
Na tabela anterior:
- O IKEv2 corresponde ao Modo Principal ou à Fase 1.
- IPsec corresponde ao Modo Rápido ou Fase 2.
- O Grupo DH especifica o Grupo de 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 na Fase 2.
O tempo de vida da SA do Modo Principal IKEv2 é fixado em 28.800 segundos nos gateways VPN do Azure Stack Hub.
A tabela a seguir lista os Grupos de Diffie-Hellman correspondentes suportados pela 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 |
Para obter mais informações, consulte RFC3526 e RFC5114.
Parte 3 - Criar uma nova conexão VPN site a site com a política IPsec/IKE
Esta seção apresenta 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 VPN e o gateway de rede local
Declarar variáveis
Para este exercício, comece declarando as seguintes variáveis. Certifique-se de substituir os marcadores de posição pelos 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"
Conecte-se à sua assinatura e crie um novo grupo de recursos
Certifique-se de alternar para o modo 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
Crie a rede virtual, o gateway 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 VPN. Ao substituir valores, é importante que você nomeie especificamente sua sub-rede de gateway GatewaySubnet. Se você nomear outra coisa, 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
Criar uma política 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, nenhum, Tempo de Vida de SA 14400 segundos 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 o mesmo comprimento de chave para criptografia e integridade IPsec.
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 criada 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 só envia ou aceita a proposta IPsec/IKE com algoritmos criptográficos especificados e pontos fortes de chave nessa conexão específica. Certifique-se de que seu dispositivo VPN local para a conexão usa ou aceita a combinação exata de políticas, 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 a uma conexão.
- Remova a política IPsec/IKE de uma conexão.
Observação
A política IPsec/IKE é suportada apenas nos gateways VPN baseados em rota Standard e HighPerformance. Ele não funciona no Basic gateway SKU.
Mostrar a política IPsec/IKE de uma conexão
O exemplo a seguir mostra como obter a diretiva IPsec/IKE configurada em uma conexão. Os roteiros 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 diretiva IPsec/IKE atual configurada na conexão, se houver. O exemplo a seguir é uma saída de exemplo 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 IPsec/IKE personalizada. A conexão real usa a política padrão negociada entre seu dispositivo VPN local e o gateway de VPN do Azure.
Adicionar ou atualizar uma política 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ê pode obter a conexão novamente para verificar se a política está atualizada:
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$connection6.IpsecPolicies
Você deve ver a saída da última linha, conforme mostrado no exemplo a seguir:
SALifeTimeSeconds : 14400
SADataSizeKilobytes : 102400000
IpsecEncryption : AES256
IpsecIntegrity : SHA256
IkeEncryption : AES128
IkeIntegrity : SHA1
DhGroup : DHGroup14
PfsGroup : None
3. Remover uma política IPsec/IKE de uma ligação
Depois de remover a política personalizada de uma conexão, o gateway de VPN do Azure reverte para a proposta IPsec/IKE padrãoe renegocia 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.