Sdílet prostřednictvím


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

Azure Firewall poskytuje funkci SNAT pro veškerý odchozí provoz do veřejných IP adres. Azure Firewall ve výchozím nastavení neprovádí SNAT s pravidly sítě, pokud se cílová IP adresa nachází v privátním rozsahu adres IP podle IANA RFC 1918 nebo ve sdíleném adresním prostoru podle IANA RFC 6598. Pravidla aplikací jsou vždy SNATována pomocí transparentní proxy bez ohledu na cílovou IP adresu.

Toto výchozí chování je vhodné při směrování provozu přímo do internetu. Existují však scénáře, kdy možná budete muset přepsat výchozí chování SNAT:

  • Pokud jste povolili vynucené tunelování, provoz směřující na internet je pomocí SNAT přeložen na jednu z privátních IP adres brány firewall v síti AzureFirewallSubnet, což skryje zdroj z vaší 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 překládá provoz prostřednictvím SNAT na jednu z privátních IP adres firewallu v podsíti AzureFirewallSubnet. Službu Azure Firewall můžete nakonfigurovat tak, aby neprováděla SNAT na váš rozsah veřejných IP adres. Zadejte například individuální IP adresu jako x.x.x.x nebo rozsah IP adres jako x.x.x.x/24.

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

  • Pokud chcete nakonfigurovat službu Azure Firewall tak, aby nikdy neprováděl SNAT u provozu zpracovávaného pravidly sítě, a to bez ohledu na cílovou IP adresu, použijte rozsah privátních IP adres 0.0.0.0/0. Díky této konfiguraci nemůže Azure Firewall směrovat provoz přímo na internet.
  • Pokud chcete nakonfigurovat bránu firewall tak, aby vždy zpracovávala provoz SNAT podle pravidel sítě bez ohledu na cílovou adresu, použijte jako rozsah privátních IP adres 255.255.255.255/32.
  • Bránu Azure Firewall je možné nakonfigurovat tak, aby se každou hodinu automaticky naučila zaregistrované a privátní rozsahy a používala získané trasy pro SNAT. Tato funkce ve verzi Preview vyžaduje , aby byl Azure Route Server nasazený 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ě. Pravidla aplikací vždy SNAT.
  • 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. Použijte metodu 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 konfigurovat PrivateRange aktuálně nepodporovaná
Azure CLI konfigurovat --private-ranges aktuálně nepodporovaná
Šablona ARM konfigurovat AdditionalProperties ve vlastnostech 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, které jsou přidruženy k politice brány firewall. Vlastnost SNAT musíte použít v firewallPolicies podle popisu v části Konfigurace rozsahů privátních IP adres SNAT – šablona ARM.

Nový firewall

Pro novou bránu firewall s využitím klasických pravidel použijte následující cmdlet 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

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 .
  • IANAPrivateRanges se rozšíří na aktuální výchozí nastavení ve službě Azure Firewall, zatímco ostatní rozsahy se k němu přidají. Pokud si přejete v rámci vaší specifikace privátního rozsahu zachovat IANAPrivateRanges výchozí hodnotu, musí zůstat v PrivateRange specifikaci, jak je ukázáno v příkladu.

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

Existující 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ý firewall

Pro novou bránu firewall s použitím klasických pravidel použijte následující příkaz v Azure CLI:

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 k 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 .
  • IANAPrivateRanges se rozšíří na aktuální výchozí nastavení ve službě Azure Firewall, zatímco ostatní rozsahy se k němu přidají. Pokud chcete zachovat IANAPrivateRanges výchozí hodnotu ve specifikaci privátního rozsahu, musí zůstat ve vaší private-ranges specifikaci, jak je znázorněno v příkladu.

Existující firewall

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

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, přidejte do additionalProperties vlastnosti následující:

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

Pravidla firewallu

Brány Azure Firewall přidružené k zásadám pro brány firewall podporují privátní IP rozsahy SNAT od verze rozhraní API 2020–11-01. Pomocí šablony můžete 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 SNATovala síťový provoz:

{
   "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 svou skupinu prostředků a poté vyberte bránu firewall.

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

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

  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. Zvolte svou skupinu prostředků a poté zvolte svou politiku 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.
  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 zaučovala zaregistrované i privátní rozsahy. Tyto naučené rozsahy adres se považují za interní pro síť, takže provoz do cílů v naučených oblastech není SNATed. 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 se rozsahy SNAT automaticky vyučovaly ve službě Azure Firewall Policy. Aktuálně můžete ke konfiguraci tras SNAT automatického učení použít šablonu ARM, Azure PowerShell nebo Azure Portal.

Poznámka:

Trasy SNAT s automatickým učením jsou dostupné jenom v nasazeních virtuální sítě (centrální virtuální síť). Není k dispozici pro nasazení na VWAN (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 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 
    
  • Aktualizujte existující bránu 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řte novou zásadu 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ískat naučené předpony firewallu

    Get-AzFirewallLearnedIpPrefix -Name $azureFirewallName -ResourceGroupName $rgname 
    

Konfigurace prostřednictvím portálu Azure Portal

Pokud chcete nakonfigurovat trasy SNAT automatického učení (Preview) pomocí webu Azure Portal, postupujte takto:

  1. Přidejte podsíť:

    • Přidejte podsíť s názvem RouteServerSubnet do existující virtuální sítě brány firewall.
    • Ujistěte se, že velikost podsítě je alespoň /27.
  2. Nasazení směrového serveru:

  3. Přidružení směrového serveru:

    • Na stránce Naučené IP předpony SNAT firewallu (Preview) přidejte směrovací službu.
  4. Úprava zásad brány firewall:

    • Povolte automatické učení IP předpon (náhled) v sekci rozsahy privátních IP adres (SNAT) politiky firewallu.
  5. Zobrazení naučených tras:

    • Podívejte se na naučené trasy na stránce Naučené SNAT IP předpony (náhled).

Další kroky