Intervalo de endereços IP privados do Firewall do Azure
O Firewall do Azure fornece a capacidade de SNAT a todo o tráfego de saída para endereços IP públicos. Por padrão, o Firewall do Azure não aceita o SNAT para regras de rede quando o endereço IP de destino está em um intervalo de endereços IP privado por IANA RFC 1918 ou espaço de endereço compartilhado por IANA RFC 6598. As regras de aplicativo sempre passam por SNAT usando um proxy transparente para qualquer endereço IP de destino.
Essa lógica funciona bem quando você roteia o tráfego diretamente para a Internet. No entanto, há cenários em que você talvez queira substituir o comportamento de SNAT padrão.
- Se tiver habilitado o túnel forçado, o tráfego de entrada na Internet será direcionado por SNAT a um dos endereços IP privados do firewall no AzureFirewallSubnet, ocultando a origem do seu firewall local.
- Se a sua organização usar intervalos de endereços IP registrados fora do IANA RFC 1918 ou do IANA RFC 6598 para redes privadas, o Firewall do Azure realizará SNAT do tráfego para um dos endereços IP privados do firewall no AzureFirewallSubnet. Você pode configurar o Firewall do Azure para não realizar SNAT de seu intervalo de endereços IP públicos. Por exemplo, você pode especificar um endereço IP individual da seguinte maneira:
192.168.1.10
. Você pode especificar um intervalo de endereços IP da seguinte maneira:192.168.1.0/24
.
O comportamento de SNAT do Firewall do Azure pode ser alterado das seguintes formas:
Para configurar o Firewall do Azure para nunca realizar SNAT do tráfego processado por regras de rede, independentemente de qual seja o endereço IP de destino, use 0.0.0.0/0 como seu intervalo de endereços IP privados. Com essa configuração, o Firewall do Azure nunca poderá rotear o tráfego diretamente para a Internet.
Para configurar o Firewall do Azure para sempre realizar SNAT processado por regras de rede, independentemente de qual seja o endereço IP de destino, use 255.255.255.255/32 como seu intervalo de endereços IP privados.
O Firewall do Azure pode ser configurado para aprender automaticamente os intervalos registrados e privados a cada hora e usar as rotas aprendidas para SNAT. Para essa capacidade, o Servidor de Rota do Azure deve estar implantado na mesma VNet que o Firewall do Azure.
Importante
A configuração do intervalo de endereços privados aplica-se apenas às regras de rede. Atualmente, as regras de aplicativo sempre realizam SNAT.
Importante
Se você quiser especificar seus próprios intervalos de endereços IP privados e manter os intervalos de endereços padrão IANA RFC 1918, verifique se sua lista personalizada ainda inclui o intervalo IANA RFC 1918.
Você pode configurar os endereços IP privados SNAT ao usar os métodos a seguir. Você deve configurar os endereços privados SNAT ao usar o método apropriado para sua configuração. Os firewalls associados a uma política de firewall devem especificar o intervalo na política e não usar AdditionalProperties
.
Método | Usar regras clássicas | Usar a política de firewall |
---|---|---|
Portal do Azure | com suporte | com suporte |
Azure PowerShell | configurar PrivateRange |
Não há suporte no momento |
CLI do Azure | configurar --private-ranges |
Não há suporte no momento |
Modelo de ARM | configurar AdditionalProperties na propriedade de firewall |
configurar snat/privateRanges na política de firewall |
Configurar intervalos de endereços IP privados SNAT - Azure PowerShell
Regras clássicas
Você pode usar o Azure PowerShell para especificar intervalos de endereços IP privados para o firewall.
Observação
A propriedade de firewall PrivateRange
é ignorada para firewalls associados a uma Política de Firewall. Você deve usar a propriedade SNAT
emfirewallPolicies
conforme descrito em Configurar intervalos de endereços IP privados SNAT – modelo do ARM.
Novo firewall
Para um novo firewall que usa regras clássicas, o cmdlet do Azure PowerShell é:
$azFw = @{
Name = '<fw-name>'
ResourceGroupName = '<resourcegroup-name>'
Location = '<location>'
VirtualNetworkName = '<vnet-name>'
PublicIpName = '<public-ip-name>'
PrivateRange = @("IANAPrivateRanges", "192.168.1.0/24", "192.168.1.10")
}
New-AzFirewall @azFw
Observação
A implantação do Firewall do Azure usando o New-AzFirewall
requer um endereço IP público e uma VNet existentes. Consulte implantar e configurar o Firewall do Azure usando o Azure PowerShell para obter um guia de implantação completo.
Observação
O IANAPrivateRanges é expandido para os padrões atuais no Firewall do Azure, enquanto os outros intervalos são adicionados a ele. Para manter o padrão IANAPrivateRanges em sua especificação de intervalo particular, ele deve permanecer na especificação PrivateRange
, conforme mostrado nos exemplos a seguir.
Para obter mais informações, confira New-AzFirewall.
Firewall existente
Para configurar um firewall existente com as regras clássicas, use os seguintes cmdlets do Azure PowerShell:
$azfw = Get-AzFirewall -Name '<fw-name>' -ResourceGroupName '<resourcegroup-name>'
$azfw.PrivateRange = @("IANAPrivateRanges","192.168.1.0/24", "192.168.1.10")
Set-AzFirewall -AzureFirewall $azfw
Configurar intervalos de endereços IP privados SNAT - CLI do Azure
Regras clássicas
Você pode usar a CLI do Azure para especificar intervalos de endereços IP privados para o firewall com o uso das regras clássicas.
Novo firewall
Para um novo firewall que usa regras clássicas, o comando da CLI do Azure é:
az network firewall create \
-n <fw-name> \
-g <resourcegroup-name> \
--private-ranges 192.168.1.0/24 192.168.1.10 IANAPrivateRanges
Observação
A implantação do Firewall do Azure usando o comando CLI do Azure az network firewall create
requer etapas de configuração adicionais para criar endereços IP públicos e configurações de IP. Consulte Implantar e configurar o Firewall do Azure usando o CLI do Azure para obter um guia de implantação completo.
Observação
O IANAPrivateRanges é expandido para os padrões atuais no Firewall do Azure, enquanto os outros intervalos são adicionados a ele. Para manter o padrão IANAPrivateRanges em sua especificação de intervalo particular, ele deve permanecer na especificação private-ranges
, conforme mostrado nos exemplos a seguir.
Firewall existente
Para configurar um firewall existente com as regras clássicas, o comando da CLI do Azure é:
az network firewall update \
-n <fw-name> \
-g <resourcegroup-name> \
--private-ranges 192.168.1.0/24 192.168.1.10 IANAPrivateRanges
Configurar intervalos de endereços IP privados SNAT – Modelo do ARM
Regras clássicas
Para configurar o SNAT durante a Implantação de modelo do ARM, você pode adicionar o seguinte à propriedadeadditionalProperties
:
"additionalProperties": {
"Network.SNAT.PrivateRanges": "IANAPrivateRanges , IPRange1, IPRange2"
},
Política de firewall
Os firewalls do Azure associados a uma política de firewall têm suporte para intervalos privados SNAT desde a versão de API 2020-11-01. No momento, você pode usar um modelo para atualizar o intervalo de SNAT particular na Política de Firewall. O exemplo a seguir configura o firewall para tráfego de rede SNAT sempre:
{
"type": "Microsoft.Network/firewallPolicies",
"apiVersion": "2020-11-01",
"name": "[parameters('firewallPolicies_DatabasePolicy_name')]",
"location": "eastus",
"properties": {
"sku": {
"tier": "Standard"
},
"snat": {
"privateRanges": "[255.255.255.255/32]"
}
}
Configurar intervalos de endereços IP privados SNAT - Portal do Azure
Regras clássicas
Você pode usar o portal do Azure para especificar intervalos de endereços IP privados para o firewall.
Selecione o grupo de recursos e, em seguida, o firewall.
Na página de Visão geral, Intervalos de IP privado, selecione o valor padrão IANA RFC 1918.
A página Editar prefixos de IP privado é aberta:
Por padrão, o IANAPrivateRanges está configurado.
Edite os intervalos de endereços IP privados para o seu ambiente e selecione Salvar.
Política de firewall
Selecione seu grupo de recursos e sua política de firewall.
Selecione os Intervalos de IP privado (SNAT) na coluna Configurações.
Selecione as condições para executar o SNAT para seu ambiente em Executar SNAT para personalizar a configuração de SNAT.
Escolha Aplicar.
Rotas de SNAT de aprendizado automático (versão prévia)
Você pode configurar o Firewall do Azure para aprender automaticamente os intervalos registrados e privados a cada 30 minutos. Esses intervalos de endereços aprendidos são considerados como internos à rede e, portanto, não é possível realizar SNAT do tráfego para destinos nos intervalos aprendidos. A configuração de intervalos de SNAT de aprendizado automático exige que o Servidor de Rota do Azure esteja implantado na mesma VNet que o Firewall do Azure. O firewall deve ser associado ao Servidor de Rota do Azure e configurado para aprender automaticamente os intervalos de SNAT na Política de Firewall do Azure. Atualmente, você pode usar um modelo do ARM, o Azure PowerShell ou o portal do Azure para configurar rotas de SNAT de aprendizado automático.
Observação
As rotas SNAT de aprendizado automático estão disponíveis apenas em implantações de VNet (rede virtual do hub). Ele não está disponível em implantações VWAN (hub virtual protegido). Para obter mais informações sobre as opções da arquitetura do Firewall do Azure, confira Quais são as opções de arquitetura do Gerenciador de Firewall do Azure?
Configurar usando um modelo do ARM
Você pode usar o JSON a seguir para configurar o aprendizado automático. O Firewall do Azure deve estar associado a um Servidor de Rota do Azure.
"type": "Microsoft.Network/firewallPolicies",
"apiVersion": "2022-11-01",
"name": "[parameters('firewallPolicies_DatabasePolicy_name')]",
"location": "eastus",
"properties": {
"sku": {
"tier": "Standard"
},
"snat": {
"autoLearnPrivateRanges": "Enabled"
}
}
Use o seguinte JSON para associar um Servidor de Rota do Azure:
"type": "Microsoft.Network/azureFirewalls",
"apiVersion": "2022-11-01",
"name": "[parameters('azureFirewalls_testFW_name')]",
"location": "eastus",
"properties": {
"sku": {
"name": "AZFW_VNet",
"tier": "Standard"
},
"threatIntelMode": "Alert",
"additionalProperties": {
"Network.RouteServerInfo.RouteServerID": "[parameters'virtualHubs_TestRouteServer_externalid')]"
},
...
}
Configurar usando o Azure PowerShell
Criar um novo firewall com um RouteServerId
# specify RouteServerId Uri $routeServerId="/subscriptions/your_sub/resourceGroups/testRG/providers/Microsoft.Network/virtualHubs/TestRS" # Create AzureFirewall $azureFirewall = New-AzFirewall -Name $azureFirewallName -ResourceGroupName ` $rgname -Location $location -RouteServerId $routeServerId # Get firewall and confirm if RouteServerId is included on the response under additional properties (Network.RouteServerInfo.RouteServerID) Get-AzFirewall -Name $azureFirewallName -ResourceGroupName $rgname
Atualizar um firewall existente com o RouteServerId
# specify RouteServerId Uri $routeServerId="/subscriptions/ your_sub /resourceGroups/testRG/providers/Microsoft.Network/virtualHubs/TestRS" # Get firewall $azFirewall = Get-AzFirewall -Name $azureFirewallName -ResourceGroupName $rgname # Update the response with RouteServerId and do firewall SET $azFirewall.RouteServerId = $routeServerId Set-AzFirewall -AzureFirewall $azFirewall # Do firewall Get and confirm if routeServerId is updated Get-AzFirewall -Name $azureFirewallName -ResourceGroupName $rgname
Criar uma nova política de firewall com o parâmetro de SNAT fornecido
# If AutoLearnPrivateRange parameter is provided, auto learn will be enabled, if not it will be disabled $snat = New-AzFirewallPolicySnat -PrivateRange $privateRange -AutoLearnPrivateRange # Create AzureFirewallPolicy (with SNAT) $azureFirewallPolicy = New-AzFirewallPolicy -Name $azureFirewallPolicyName ` -ResourceGroupName $rgname -Location $location -Snat $snat # Get AzureFirewallPolicy and verify Get-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgname
Atualizar uma política de firewall existente com SNAT
$snat = New-AzFirewallPolicySnat -PrivateRange $privateRange2 # Set AzureFirewallPolicy $azureFirewallPolicy.Snat = $snat Set-AzFirewallPolicy -InputObject $azureFirewallPolicy # Do Get and Verify Get-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgname
Obter prefixos aprendidos pelo firewall
Get-AzFirewallLearnedIpPrefix -Name $azureFirewallName -ResourceGroupName $rgname
Configuração usando o portal do Azure
Você pode usar o portal para associar um Servidor de Rota ao Firewall do Azure para configurar rotas de SNAT de aprendizado automático (versão prévia).
Use o portal para concluir as seguintes tarefas:
- Adicione uma sub-rede chamada RouteServerSubnet à VNet de firewall existente. O tamanho da sub-rede deve ser pelo menos /27.
- Implante um Servidor de Rota na VNet de firewall existente. Para obter informações sobre o Servidor de Rota do Azure, confira Início Rápido: criar e configurar o Servidor de Rota usando o portal do Azure.
- Adicione o servidor de rota na página Prefixos de IP SNAT aprendidos do firewall (versão prévia).
- Modifique sua política de firewall para habilitar prefixos de IP de aprendizado automático (versão prévia) na seção Intervalos de IP Privado (SNAT).
- Você pode ver as rotas aprendidas na página Prefixos de IP do SNAT aprendido (versão prévia).
Próximas etapas
- Saiba mais sobre o Túnel forçado do Firewall do Azure.