Rozsahy privátních IP adres služby Azure Firewall SNAT

Azure Firewall poskytuje funkci SNAT pro veškerý odchozí provoz do veřejných IP adres. Azure Firewall ve výchozím nastavení nepoužívá síťový adaptér s pravidly sítě, pokud je cílová IP adresa v privátním rozsahu IP adres na IANA RFC 1918 nebo sdílený adresní prostor na IANA RFC 6598. Pravidla aplikací se vždy SNAT používají transparentní proxy bez ohledu na cílovou IP adresu.

Tato logika funguje dobře, když směrujete provoz přímo do internetu. Existují však scénáře, ve kterých můžete chtít přepsat výchozí chování SNAT.

  • Pokud jste povolili vynucené tunelování, provoz směřující na internet se přesměruje na jednu z privátních IP adres brány firewall v AzureFirewallSubnetu a skryje zdroj z místní brány firewall.
  • Pokud vaše organizace používá registrované rozsahy IP adres mimo IANA RFC 1918 nebo IANA RFC 6598 pro privátní sítě, Azure Firewall SNAT provoz na jednu z privátních IP adres brány firewall v AzureFirewallSubnet. Službu Azure Firewall ale můžete nakonfigurovat tak, aby neobsála rozsah veřejných IP adres. Pokud chcete například zadat jednotlivou IP adresu, můžete ji zadat takto: 192.168.1.10. Pokud chcete zadat rozsah IP adres, můžete ho zadat takto: 192.168.1.0/24.

Chování SNAT služby Azure Firewall je možné změnit následujícími způsoby:

  • Pokud chcete nakonfigurovat službu Azure Firewall tak, aby nikdy nezpracovala provoz SNAT zpracovávaný pravidly sítě bez ohledu na cílovou IP adresu, použijte jako rozsah privátníCH IP adres adresu 0.0.0.0/0 . Díky této konfiguraci nemůže Azure Firewall nikdy směrovat provoz přímo na internet.

  • Pokud chcete nakonfigurovat bránu firewall tak, aby vždy zpracovávala pravidla SNAT bez ohledu na cílovou adresu, použijte jako rozsah privátních IP adres 255.255.255/32 255.255.255/32 .

  • Bránu Azure Firewall je možné nakonfigurovat tak, aby se každou hodinu automaticky učila a privátní rozsahy a používala naučené trasy pro SNAT. Tato funkce preview musí mít nasazený Azure Route Server ve stejné virtuální síti jako Azure Firewall.

Důležité

Konfigurace rozsahu privátních adres se vztahuje pouze na pravidla sítě. V současné době pravidla aplikací vždy SNAT.

Důležité

Pokud chcete zadat vlastní rozsahy privátních IP adres a ponechat výchozí rozsahy adres IANA RFC 1918, ujistěte se, že váš vlastní seznam stále obsahuje rozsah IANA RFC 1918.

Privátní IP adresy SNAT můžete nakonfigurovat pomocí následujících metod. Privátní adresy SNAT musíte nakonfigurovat pomocí metody odpovídající vaší konfiguraci. Brány firewall přidružené k zásadám brány firewall musí určovat rozsah zásad a nesmí se používat AdditionalProperties.

metoda Použití klasických pravidel Použití zásad brány firewall
portál Azure Podporováno Podporováno
Azure PowerShell Konfigurace PrivateRange aktuálně nepodporovaná
Azure CLI Konfigurace --private-ranges aktuálně nepodporovaná
Šablona ARM konfigurace AdditionalProperties ve vlastnosti brány firewall konfigurace snat/privateRanges v zásadách brány firewall

Konfigurace rozsahů privátních IP adres SNAT – Azure PowerShell

Klasická pravidla

Pomocí Azure PowerShellu můžete zadat rozsahy privátních IP adres pro bránu firewall.

Poznámka:

Vlastnost brány firewall PrivateRange je ignorována pro brány firewall přidružené k zásadám brány firewall. Vlastnost firewallPolicies musíte použít podle popisu v části Konfigurace rozsahů SNAT privátních IP adres SNAT – šablona ARM.

Nová brána firewall

Pro novou bránu firewall pomocí klasických pravidel je rutina Azure PowerShellu následující:

$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

Poznámka:

Nasazení služby Azure Firewall pomocí New-AzFirewall vyžaduje existující virtuální síť a veřejnou IP adresu. Úplný průvodce nasazením najdete v tématu Nasazení a konfigurace služby Azure Firewall pomocí Azure PowerShellu .

Poznámka:

IANAPrivateRanges je rozbalený na aktuální výchozí hodnoty ve službě Azure Firewall, zatímco ostatní oblasti jsou do ní přidány. Pokud chcete zachovat výchozí hodnotu IANAPrivateRanges ve specifikaci privátního rozsahu, musí zůstat ve PrivateRange specifikaci, jak je znázorněno v následujících příkladech.

Další informace naleznete v tématu New-AzFirewall.

Existující brána firewall

Pokud chcete nakonfigurovat existující bránu firewall pomocí klasických pravidel, použijte následující rutiny Azure PowerShellu:

$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

Konfigurace rozsahů privátních IP adres SNAT – Azure CLI

Klasická pravidla

Pomocí Azure CLI můžete zadat rozsahy privátních IP adres pro bránu firewall pomocí klasických pravidel.

Nová brána firewall

Pro novou bránu firewall pomocí klasických pravidel je příkaz Azure CLI následující:

az network firewall create \
-n <fw-name> \
-g <resourcegroup-name> \
--private-ranges 192.168.1.0/24 192.168.1.10 IANAPrivateRanges

Poznámka:

Nasazení služby Azure Firewall pomocí příkazu az network firewall create Azure CLI vyžaduje další kroky konfigurace pro vytvoření veřejných IP adres a konfigurace IP adres. Úplný průvodce nasazením najdete v tématu Nasazení a konfigurace služby Azure Firewall pomocí Azure CLI .

Poznámka:

IANAPrivateRanges je rozbalený na aktuální výchozí hodnoty ve službě Azure Firewall, zatímco ostatní oblasti jsou do ní přidány. Pokud chcete zachovat výchozí hodnotu IANAPrivateRanges ve specifikaci privátního rozsahu, musí zůstat ve private-ranges specifikaci, jak je znázorněno v následujících příkladech.

Existující brána firewall

Pokud chcete nakonfigurovat existující bránu firewall pomocí klasických pravidel, je příkaz Azure CLI následující:

az network firewall update \
-n <fw-name> \
-g <resourcegroup-name> \
--private-ranges 192.168.1.0/24 192.168.1.10 IANAPrivateRanges

Konfigurace rozsahů privátních IP adres SNAT – šablona ARM

Klasická pravidla

Pokud chcete nakonfigurovat SNAT během nasazení šablony ARM, můžete do additionalProperties vlastnosti přidat následující:

"additionalProperties": {
   "Network.SNAT.PrivateRanges": "IANAPrivateRanges , IPRange1, IPRange2"
},

Zásady brány firewall

Brány Azure Firewall přidružené k zásadám brány firewall podporují privátní rozsahy SNAT od verze rozhraní API 11. 11. 2020. V současné době můžete pomocí šablony aktualizovat privátní rozsah SNAT v zásadách brány firewall. Následující ukázka nakonfiguruje bránu firewall tak, aby vždy provoz sítě SNAT:

{ 

            "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]" 
                } 
            } 

Konfigurace rozsahů privátních IP adres SNAT – Azure Portal

Klasická pravidla

Pomocí webu Azure Portal můžete zadat rozsahy privátních IP adres pro bránu firewall.

  1. Vyberte skupinu prostředků a pak vyberte bránu firewall.

  2. Na stránce Přehled vyberte rozsahy privátních IP adres výchozí hodnotu IANA RFC 1918.

    Otevře se stránka Upravit předpony privátníCH IP adres :

    Screenshot of edit private IP prefixes.

  3. Ve výchozím nastavení je nakonfigurovaná služba IANAPrivateRanges .

  4. Upravte rozsahy privátních IP adres pro vaše prostředí a pak vyberte Uložit.

Zásady brány firewall

  1. Vyberte skupinu prostředků a pak vyberte zásadu brány firewall.

  2. Ve sloupci Nastavení vyberte rozsahy privátních IP adres (SNAT).

  3. Vyberte podmínky pro provedení SNAT pro vaše prostředí v části Provést SNAT a přizpůsobte konfiguraci SNAT. Screenshot of Private IP ranges (SNAT).

  4. Vyberte Použít.

Automatické učení tras SNAT (Preview)

Službu Azure Firewall můžete nakonfigurovat tak, aby se každých 30 minut automaticky učila zaregistrované i privátní rozsahy. Tyto naučené rozsahy adres se považují za interní v síti, takže provoz do cílů v naučených oblastech se nesloučí jako SNAT. Rozsahy SNAT automatického učení vyžadují, aby byl Azure Route Server nasazen ve stejné virtuální síti jako Azure Firewall. Brána firewall musí být přidružená k serveru Azure Route a musí být nakonfigurovaná tak, aby automaticky načítá rozsahy SNAT ve službě Azure Firewall Policy. Aktuálně můžete použít šablonu ARM, Azure PowerShell nebo Azure Portal ke konfiguraci tras SNAT automatického učení.

Poznámka:

Trasy SNAT automatického učení jsou dostupné jenom pro nasazení virtuální sítě (virtuální síť centra). Není k dispozici pro nasazení virtuální sítě WAN (zabezpečené virtuální centrum). Další informace o možnostech architektury služby Azure Firewall najdete v tématu Jaké jsou možnosti architektury Azure Firewall Manageru?

Konfigurace pomocí šablony ARM

Ke konfiguraci automatického učení můžete použít následující kód JSON. Ke službě Azure Route Server musí být přidružená brána Azure Firewall.

	  "type": "Microsoft.Network/firewallPolicies",
         "apiVersion": "2022-11-01",
	"name": "[parameters('firewallPolicies_DatabasePolicy_name')]", 
            "location": "eastus", 
            "properties": { 
                "sku": { 
                    "tier": "Standard" 
                }, 
                "snat": { 
                     "autoLearnPrivateRanges": "Enabled"
                } 
            } 

Pomocí následujícího kódu JSON přidružte Azure Route Server:

  "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')]"
    },
    ...
  }

Konfigurace pomocí Azure PowerShellu

  • Vytvořte novou bránu firewall s id routeserveru.

    # 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 
    
  • Aktualizace existující brány firewall pomocí 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
    
    
  • Vytvoření nové zásady brány firewall se zadaným parametrem SNAT

    # 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 
    
    
  • Aktualizace existujících zásad brány firewall pomocí 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 
    
  • Získání předpon naučených bránou firewall

      Get-AzFirewallLearnedIpPrefix -Name $azureFirewallName -ResourceGroupName $rgname 
    

Konfigurace prostřednictvím portálu Azure Portal

Pomocí portálu můžete přidružit směrovací server ke službě Azure Firewall a nakonfigurovat trasy SNAT automatického učení (Preview).

Pomocí portálu proveďte následující úlohy:

  • Přidejte podsíť s názvem RouteServerSubnet do existující virtuální sítě brány firewall. Velikost podsítě by měla být alespoň /27.
  • Nasaďte směrovací server do existující virtuální sítě brány firewall. Informace o Azure Route Serveru najdete v tématu Rychlý start: Vytvoření a konfigurace směrového serveru pomocí webu Azure Portal.
  • Na stránce s předponami IP adres SNAT (Preview) brány firewall přidejte směrovací server. Screenshot showing firewall add a route server.
  • Upravte zásady brány firewall tak, aby povolte předpony IP adres automatického učení (Preview) v části Rozsahy privátních IP adres (SNAT). Screenshot showing firewall policy Private IP ranges (SNAT) settings.
  • Na stránce Předpony IP adres Naučené SNAT (Preview) si můžete prohlédnout naučené trasy.

Další kroky