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.

  1. Selecione o grupo de recursos e, em seguida, o firewall.

  2. 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:

    Screenshot of edit private IP prefixes.

  3. Por padrão, o IANAPrivateRanges está configurado.

  4. Edite os intervalos de endereços IP privados para o seu ambiente e selecione Salvar.

Política de firewall

  1. Selecione seu grupo de recursos e sua política de firewall.

  2. Selecione os Intervalos de IP privado (SNAT) na coluna Configurações.

  3. Selecione as condições para executar o SNAT para seu ambiente em Executar SNAT para personalizar a configuração de SNAT. Screenshot of Private IP ranges (SNAT).

  4. 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 só podem ser aproveitadas em implantações de VNet (rede virtual do hub). Elas não são compatíveis com implantações VWAN (hub virtual seguro). 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). Screenshot showing firewall add a route server.
  • 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). Screenshot showing firewall policy Private IP ranges (SNAT) settings.
  • Você pode ver as rotas aprendidas na página Prefixos de IP do SNAT aprendido (versão prévia).

Próximas etapas