Distribuera en Azure Firewall med flera offentliga IP-adresser med hjälp av Azure PowerShell

Den här funktionen aktiverar följande scenarier:

  • DNAT – Du kan översätta flera standardportinstanser till dina serverdelsservrar. Om du till exempel har två offentliga IP-adresser kan du översätta TCP-port 3389 (RDP) för båda IP-adresserna.
  • SNAT – Ytterligare portar är tillgängliga för utgående SNAT-anslutningar, vilket minskar risken för SNAT-portöverbelastning. Azure Firewall väljer slumpmässigt den första offentliga KÄLL-IP-adressen som ska användas för en anslutning och väljer en annan offentlig IP-adress när portarna från den första IP-adressen har förbrukats. Om du har filtrering nedströms i nätverket måste du tillåta alla offentliga IP-adresser som är associerade med brandväggen.

Du kan komma åt Azure Firewall med flera offentliga IP-adresser via Azure-portalen, Azure PowerShell, Azure CLI, REST och mallar. Du kan koppla upp till 250 publika IP-adresser till en Azure Firewall som är distribuerad i ett virtuellt nätverk. DNAT-destinationsreglerna räknas också mot maxgränsen på 250. För en Azure Firewall som är installerad i en säker virtuell hubb (VHub) kan du associera upp till 80 publika IP-adresser.

Viktigt!

Azure Firewall stöder inte att koppla till ett offentligt IP-prefix. Du måste koppla individuella Standard publika IP-adresser till brandväggen.

Kommentar

Att lägga till flera offentliga IP-adresser är det billigare sättet att skala SNAT-portar. I scenarier med hög trafikvolym och dataflöde använder du i stället en NAT Gateway för en mer skalbar lösning. NAT Gateway allokerar SNAT-portar dynamiskt över alla offentliga IP-adresser som är associerade med den. Mer information finns i Integrera NAT Gateway med Azure Firewall och alternativjämförelse i bästa praxis.

Följande Azure PowerShell-exempel visar hur du kan konfigurera, lägga till och ta bort offentliga IP-adresser för Azure Firewall.

Viktigt!

Du kan inte ta bort den första IP-konfigurationen från konfigurationssidan för offentliga IP-adresser i Azure Firewall. Om du vill ändra IP-adressen använder du Azure PowerShell.

Skapa en brandvägg med två eller flera offentliga IP-adresser

I det här exemplet skapas en brandvägg som är kopplad till det virtuella nätverket myVirtualNetwork med två offentliga IP-adresser. Använd Get-AzVirtualNetwork för att hämta det befintliga virtuella nätverket New-AzPublicIpAddress för att skapa varje offentlig IP-adress och New-AzFirewall för att distribuera brandväggen med båda IP-adresserna.

$rgName = "resourceGroupName"

$vnet = Get-AzVirtualNetwork `
  -Name "myVirtualNetwork" `
  -ResourceGroupName $rgName

$pip1 = New-AzPublicIpAddress `
  -Name "AzFwPublicIp1" `
  -ResourceGroupName $rgName `
  -Sku "Standard" `
  -Location "centralus" `
  -AllocationMethod Static

$pip2 = New-AzPublicIpAddress `
  -Name "AzFwPublicIp2" `
  -ResourceGroupName $rgName `
  -Sku "Standard" `
  -Location "centralus" `
  -AllocationMethod Static

New-AzFirewall `
  -Name "azFw" `
  -ResourceGroupName $rgName `
  -Location centralus `
  -VirtualNetwork $vnet `
  -PublicIpAddress @($pip1, $pip2)

Lägga till en offentlig IP-adress i en befintlig brandvägg

I det här exemplet är den offentliga IP-adressen azFwPublicIp1 kopplad till brandväggen. Använd New-AzPublicIpAddress för att skapa den nya IP-adressen, Get-AzFirewall för att hämta det befintliga brandväggsobjektet och Set-AzFirewall för att spara den uppdaterade konfigurationen.

$pip = New-AzPublicIpAddress `
  -Name "azFwPublicIp1" `
  -ResourceGroupName "rg" `
  -Sku "Standard" `
  -Location "centralus" `
  -AllocationMethod Static

$azFw = Get-AzFirewall `
  -Name "AzureFirewall" `
  -ResourceGroupName "rg"

$azFw.AddPublicIpAddress($pip)

$azFw | Set-AzFirewall

Ta bort en offentlig IP-adress från en befintlig brandvägg

I det här exemplet kopplas den offentliga IP-adressen azFwPublicIp1 bort från brandväggen. Använd Get-AzPublicIpAddress för att hämta den befintliga IP-adressen, Get-AzFirewall för att hämta brandväggsobjektet och Set-AzFirewall för att spara den uppdaterade konfigurationen.

$pip = Get-AzPublicIpAddress `
  -Name "azFwPublicIp1" `
  -ResourceGroupName "rg"

$azFw = Get-AzFirewall `
  -Name "AzureFirewall" `
  -ResourceGroupName "rg"

$azFw.RemovePublicIpAddress($pip)

$azFw | Set-AzFirewall

Nästa steg