Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure Firewall bietet eine SNAT-Funktionalität für sämtlichen ausgehenden Datenverkehr an öffentliche IP-Adressen. Standardmäßig verwendet Azure Firewall SNAT nicht mit Netzwerkregeln, wenn sich die Ziel-IP-Adresse in einem privaten IP-Adressbereich pro IANA RFC 1918 oder freigegebenem Adressraum pro IANA RFC 6598 befindet. Anwendungsregeln verwenden SNAT immer über einen transparenten Proxy , unabhängig von der Ziel-IP-Adresse.
Dieses Standardverhalten eignet sich, wenn der Datenverkehr direkt an das Internet weitergeleitet wird. Es gibt jedoch Szenarien, in denen Sie möglicherweise das Standardmäßige SNAT-Verhalten außer Kraft setzen müssen:
- Wenn Sie Erzwungenes Tunneln aktivieren, leitet Azure Firewall den ans Internet gebundenen Datenverkehr an eine der privaten IP-Adressen der Firewall im AzureFirewallSubnetz weiter und verbirgt so die Quelle vor Ihrer on-premises Firewall.
- Wenn Ihre Organisation registrierte IP-Adressbereiche außerhalb von IANA RFC 1918 oder IANA RFC 6598 für private Netzwerke verwendet, führt Azure Firewall SNAT für den Datenverkehr zu einer der privaten IP-Adressen der Firewall im AzureFirewallSubnet durch. Sie können Azure Firewall so konfigurieren, dass Ihr öffentlicher IP-Adressbereich nicht per SNAT weitergeleitet wird. Geben Sie z. B. eine einzelne IP-Adresse als
x.x.x.xoder einen Bereich von IP-Adressen alsx.x.x.x/24.
Sie können das SNAT-Verhalten von Azure Firewall auf folgende Weise ändern:
- Wenn Sie Azure Firewall so konfigurieren möchten, dass Datenverkehr, der von Netzwerkregeln verarbeitet wird, niemals mit SNAT weitergeleitet wird, unabhängig von der Ziel-IP-Adresse, verwenden Sie 0.0.0.0/0 als Ihren privaten IP-Adressbereich. Mit dieser Konfiguration kann Azure Firewall den Datenverkehr nicht direkt an das Internet weiterleiten.
- Verwenden Sie 255.255.255.255.255/255/32 als privaten IP-Adressbereich, um die Firewall so zu konfigurieren, dass der von Netzwerkregeln verarbeitete SNAT-Datenverkehr unabhängig von der Zieladresse immer verarbeitet wird.
- Um die Azure Firewall so zu konfigurieren, dass sie in regelmäßigen Abständen automatisch registrierte und private IP-Adressbereiche lernt, aktivieren Sie das automatische Lernen von SNAT-Routen. Erlernte Adressbereiche werden als intern behandelt, und Datenverkehr mit Ziel in diesen Bereichen wird keinem SNAT unterzogen.
Wichtig
- Die private Adressbereichskonfiguration gilt nur für Netzwerkregeln. Anwendungsregeln verwenden immer SNAT.
- Wenn Sie Ihre eigenen privaten IP-Adressbereiche festlegen und die standardmäßigen IANA RFC 1918-Adressbereiche beibehalten möchten, stellen Sie sicher, dass Ihre benutzerdefinierte Liste den IANA RFC 1918-Bereich noch enthält.
Die folgende Tabelle zeigt die unterstützten Konfigurationsmethoden. Firewalls, die einer Firewallrichtlinie zugeordnet sind, müssen den Bereich in der Richtlinie angeben und dürfen nicht AdditionalProperties verwenden.
| Methode | Klassische Regeln | Firewallrichtlinie |
|---|---|---|
| Azure PowerShell | Unterstützt | Nicht unterstützt |
| Azure-Befehlszeilenschnittstelle | Unterstützt | Nicht unterstützt |
| ARM-Vorlage | Unterstützt | Unterstützt |
| Azure-Portal | Unterstützt | Unterstützt |
Konfigurieren Sie SNAT-private IP-Adressbereiche
Wählen Sie Ihre Konfigurationsmethode. Azure PowerShell und Azure CLI unterstützen nur klassische Regeln. Um SNAT-Bereiche mit einer Firewall-Richtlinie zu konfigurieren, verwenden Sie eine ARM-Vorlage oder das Azure-Portal.
Verwenden Sie Azure PowerShell, um private IP-Adressbereiche für die Firewall anzugeben.
Hinweis
Die Firewalleigenschaft PrivateRange wird für Firewalls ignoriert, die einer Firewallrichtlinie zugeordnet sind. Du musst die SNAT Eigenschaft in firewallPolicies wie im ARM-Vorlagen-Tab beschrieben verwenden.
Neue Firewall
Für eine neue Firewall, die klassische Regeln verwendet, erstellen Sie die Firewall mit New-AzFirewall:
$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
Hinweis
- Um Azure Firewall mithilfe von
New-AzFirewallbereitzustellen, sind ein vorhandenes virtuelles Netzwerk und eine öffentliche IP-Adresse erforderlich. Eine vollständige Bereitstellungsanleitung finden Sie unter Bereitstellen und Konfigurieren der Azure Firewall mit Azure PowerShell. -
IANAPrivateRangeserweitert die aktuellen Standardeinstellungen auf Azure Firewall, während die anderen Bereiche hinzugefügt werden. Damit dieIANAPrivateRangesStandardeinstellung in Ihrer Spezifikation für private Bereiche beibehalten wird, muss sie in IhrerPrivateRangeSpezifikation verbleiben, wie im Beispiel gezeigt.
Vorhandene Firewall
Um eine bestehende Firewall mit klassischen Regeln zu konfigurieren, holen Sie die Firewall mit Get-AzFirewall und aktualisieren Sie sie mit Set-AzFirewall:
$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
SNAT-Routen automatisch lernen
Du kannst die Azure Firewall so konfigurieren, dass sie alle 30 Minuten sowohl registrierte als auch private Bereiche automatisch lernt. Diese gelernten Adressbereiche sind netzwerkintern, so dass der Datenverkehr zu Zielen in den gelernten Bereichen nicht SNATed wird. Sowohl Bereitstellungen virtueller Netzwerke (VNet) als auch Bereitstellungen sicherer virtueller Hubs (vHub) unterstützen automatisch erlernte SNAT-Routen.
Hinweis
- Auto-learn SNAT erfordert, dass Azure Firewall mit Azure Route Server verknüpft ist.
- Für VNet-Deployments müssen Sie Azure Route Server im selben virtuellen Netzwerk wie die Azure Firewall bereitstellen.
- Für vHub-Deployments ist der Azure Route Server standardmäßig bereits bereitgestellt und zugeordnet.
- Für beide Bereitstellungsmodelle musst du nach Abschluss der Verknüpfung das automatische Lernen von SNAT in der Azure Firewall Policy aktivieren.
- Weitere Informationen zu Azure Firewall-Architekturoptionen finden Sie unter Welche Optionen bietet die Azure Firewall Manager-Architektur?.
VNet-Firewall
Für VNet-Deployments muss man den Azure Route Server bereitstellen und zuordnen, bevor man automatische SNAT-Routen aktiviert.
Voraussetzungen:
- Ein Subnetz namens RouteServerSubnet in deinem virtuellen Firewall-Netzwerk mit einer Größe von mindestens /27.
- Azure Route Server wurde im selben virtuellen Netzwerk wie Ihre Firewall bereitgestellt. Für Bereitstellungsschritte siehe Quickstart: Erstellen und konfigurieren Sie den Routenserver über das Azure-Portal.
In den folgenden Beispielen ersetzen Sie die Variablennamen ($azureFirewallName, $rgname, $location, usw.) durch Ihre eigenen Werte.
Erstellen Sie eine neue Firewall mit einer Route-Server-ID mit New-AzFirewall.
# Specify the Route Server resource ID $routeServerId="/subscriptions/your_sub/resourceGroups/testRG/providers/Microsoft.Network/virtualHubs/TestRS" # Create the firewall $azureFirewall = New-AzFirewall -Name $azureFirewallName ` -ResourceGroupName $rgname ` -Location $location ` -RouteServerId $routeServerId # Verify the Route Server ID is set Get-AzFirewall -Name $azureFirewallName -ResourceGroupName $rgnameVerknüpfen Sie einen Routenserver mit einer bestehenden Firewall, indem Sie Get-AzFirewall und Set-AzFirewall verwenden.
# Specify the Route Server resource ID $routeServerId="/subscriptions/your_sub/resourceGroups/testRG/providers/Microsoft.Network/virtualHubs/TestRS" # Get the firewall $azFirewall = Get-AzFirewall -Name $azureFirewallName -ResourceGroupName $rgname # Associate the Route Server and update the firewall $azFirewall.RouteServerId = $routeServerId Set-AzFirewall -AzureFirewall $azFirewall # Verify the Route Server ID is updated Get-AzFirewall -Name $azureFirewallName -ResourceGroupName $rgnameErstellen Sie eine neue Firewall-Richtlinie mit aktiviertem Auto-Learn, indem Sie New-AzFirewallPolicySnat und New-AzFirewallPolicy verwenden.
# Include AutoLearnPrivateRange to enable auto-learn $snat = New-AzFirewallPolicySnat -PrivateRange $privateRange -AutoLearnPrivateRange # Create the firewall policy with SNAT configuration $azureFirewallPolicy = New-AzFirewallPolicy -Name $azureFirewallPolicyName ` -ResourceGroupName $rgname ` -Location $location ` -Snat $snat # Verify the firewall policy Get-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgnameAktualisieren Sie eine bestehende Firewall-Richtlinie mit SNAT, indem Sie New-AzFirewallPolicySnat und Set-AzFirewallPolicy verwenden.
$snat = New-AzFirewallPolicySnat -PrivateRange $privateRange2 -AutoLearnPrivateRange # Update the firewall policy $azureFirewallPolicy.Snat = $snat Set-AzFirewallPolicy -InputObject $azureFirewallPolicy # Verify the update Get-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgnameVerifizieren Sie die gelernten Präfixe mit Get-AzFirewallLearnedIpPrefix.
Get-AzFirewallLearnedIpPrefix -Name $azureFirewallName -ResourceGroupName $rgname
vHub-Firewall
Für vHub-Deployments ist der Azure Route Server standardmäßig bereits bereitgestellt und zugeordnet. Du musst nur das automatische Lernen in deiner Firewall-Richtlinie aktivieren.
In den folgenden Beispielen ersetzen Sie die Variablennamen ($azureFirewallName, $rgname, $location, usw.) durch Ihre eigenen Werte.
Erstellen Sie eine neue Firewall-Richtlinie mit aktiviertem Auto-Learn, indem Sie New-AzFirewallPolicySnat und New-AzFirewallPolicy verwenden.
# Include AutoLearnPrivateRange to enable auto-learn $snat = New-AzFirewallPolicySnat -PrivateRange $privateRange -AutoLearnPrivateRange # Create the firewall policy with SNAT configuration $azureFirewallPolicy = New-AzFirewallPolicy -Name $azureFirewallPolicyName ` -ResourceGroupName $rgname ` -Location $location ` -Snat $snat # Verify the firewall policy Get-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgnameAktualisieren Sie eine bestehende Firewall-Richtlinie mit SNAT, indem Sie New-AzFirewallPolicySnat und Set-AzFirewallPolicy verwenden.
$snat = New-AzFirewallPolicySnat -PrivateRange $privateRange2 -AutoLearnPrivateRange # Update the firewall policy $azureFirewallPolicy.Snat = $snat Set-AzFirewallPolicy -InputObject $azureFirewallPolicy # Verify the update Get-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgnameErhalten Sie den virtuellen Hub mit Get-AzVirtualHub und die Firewall-Richtlinie mit Get-AzFirewallPolicy.
$Hub = Get-AzVirtualHub -ResourceGroupName $rgname -Name $virtualHubName $azureFirewallPolicy = Get-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgnameErstellen Sie mithilfe von New-AzFirewallHubPublicIpAddress und New-AzFirewallHubIpAddress eine öffentliche IP-Konfiguration.
$azureFirewallPIPs = New-AzFirewallHubPublicIpAddress -Count 1 $azureFirewallHubIPs = New-AzFirewallHubIpAddress -PublicIP $azureFirewallPIPsErstellen Sie die vHub-Firewall mit der Auto-Learn-Policy mit New-AzFirewall.
$azureFirewall = New-AzFirewall -Name $azureFirewallName ` -ResourceGroupName $rgname ` -Location $location ` -VirtualHubId $Hub.Id ` -FirewallPolicyId $azureFirewallPolicy.Id ` -SkuName "AZFW_Hub" ` -HubIPAddress $azureFirewallHubIPs ` -SkuTier $FirewallTierVerifizieren Sie die gelernten Präfixe mit Get-AzFirewallLearnedIpPrefix.
Get-AzFirewallLearnedIpPrefix -Name $azureFirewallName -ResourceGroupName $rgname