Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Firewall di Azure offre funzionalità SNAT per tutto il traffico in uscita verso indirizzi IP pubblici. Per impostazione predefinita, Firewall di Azure non usa SNAT con regole di rete quando l'indirizzo IP di destinazione si trova in un intervallo di indirizzi IP privati per IANA RFC 1918 o spazio indirizzi condiviso per IANA RFC 6598. Le regole dell'applicazione usano sempre SNAT tramite un proxy trasparente indipendentemente dall'indirizzo IP di destinazione.
Questo comportamento predefinito è adatto quando si instrada il traffico direttamente a Internet. Esistono tuttavia scenari in cui potrebbe essere necessario eseguire l'override del comportamento SNAT predefinito:
- Se abiliti il tunneling forzato, Firewall di Azure effettua il SNAT del traffico destinato a Internet verso uno degli indirizzi IP privati del firewall nella AzureFirewallSubnet, nascondendo l'origine dal tuo firewall locale.
- Se l'organizzazione usa intervalli di indirizzi IP registrati all'esterno di IANA RFC 1918 o IANA RFC 6598 per le reti private, Firewall di Azure indirizzerà il traffico tramite SNAT verso uno degli indirizzi IP privati del firewall in AzureFirewallSubnet. È possibile configurare Firewall di Azure affinché non effettui SNAT sulla gamma di indirizzi IP pubblici. Ad esempio, specificare un singolo indirizzo IP come
x.x.x.xo un intervallo di indirizzi IP comex.x.x.x/24.
È possibile modificare il comportamento SNAT di Firewall di Azure nei modi seguenti:
- Per configurare Firewall di Azure in modo che il traffico SNAT non venga mai elaborato dalle regole di rete indipendentemente dall'indirizzo IP di destinazione, usare 0.0.0.0/0 come intervallo di indirizzi IP privati. Con questa configurazione, Firewall di Azure non può instradare il traffico direttamente a Internet.
- Per configurare il firewall per sempre il traffico SNAT elaborato dalle regole di rete a prescindere dall'indirizzo di destinazione, usare 255.255.255.255/32 come l'intervallo di indirizzi IP privati.
- Per configurare Firewall di Azure affinché apprezzi automaticamente gli intervalli di indirizzi IP registrati e privati a intervalli regolari, abilita l'apprendimento automatico delle rotte SNAT. Gli intervalli di indirizzi appresi sono trattati come interni e il traffico destinato a questi intervalli non viene sottoposto a SNAT.
Importante
- La configurazione dell'intervallo di indirizzi privato si applica solo alle regole di rete. Le regole dell'applicazione usano sempre SNAT.
- Se si desidera specificare intervalli di indirizzi IP privati propri e mantenere gli intervalli di indirizzi IANA RFC 1918 predefiniti, assicurarsi che l'elenco personalizzato includa ancora l'intervallo IANA RFC 1918.
La tabella seguente mostra i metodi di configurazione supportati. I firewall associati a un criterio firewall devono specificare l'intervallo nel criterio e non utilizzare AdditionalProperties.
| metodo | Regole classiche | Politica firewall |
|---|---|---|
| Azure PowerShell | Supported | Non supportato |
| Interfaccia della riga di comando di Azure (CLI) | Supported | Non supportato |
| Modello ARM | Supported | Supported |
| Portale di Azure | Supported | Supported |
Configura gli intervalli di indirizzi IP privati SNAT
Scegli il metodo di configurazione. Azure PowerShell e interfaccia della riga di comando di Azure supportano solo le regole classiche. Per configurare i range SNAT con una policy firewall, utilizza un template ARM o il portale Azure.
Usare Azure PowerShell per specificare intervalli di indirizzi IP privati per il firewall.
Nota
La proprietà del firewall PrivateRange viene ignorata per i firewall associati a un criterio firewall. Devi utilizzare la SNAT proprietà in firewallPolicies come descritto nella scheda modello ARM .
Nuovo firewall
Per un nuovo firewall che utilizza regole classiche, crea il firewall usando 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
Nota
- La distribuzione di Firewall di Azure tramite
New-AzFirewallrichiede una rete virtuale esistente e un indirizzo IP pubblico. Per una guida completa alla distribuzione, vedere Distribuire e configurare Firewall di Azure con Azure PowerShell. -
IANAPrivateRangessi espande alle impostazioni predefinite correnti in Firewall di Azure, mentre gli altri intervalli vengono aggiunti. Per mantenere l'impostazione predefinitaIANAPrivateRangesnella specifica dell'intervallo privato, deve essere mantenuta nella specificaPrivateRange, come mostrato nell'esempio.
Firewall esistente
Per configurare un firewall esistente che utilizza regole classiche, ottieni il firewall usando Get-AzFirewall e aggiornalo usando 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
Apprendimento automatico delle rotte SNAT
Puoi configurare Firewall di Azure per imparare automaticamente sia i range registrati che quelli privati ogni 30 minuti. Questi intervalli di indirizzi appresi sono interni alla rete, quindi il traffico verso le destinazioni negli intervalli appresi non è SNATed. Sia le implementazioni di rete virtuale (VNet) sia quelle di hub virtuale sicuro (vHub) supportano le rotte SNAT di apprendimento automatico.
Nota
- Auto-learning SNAT richiede che Firewall di Azure sia associato a Server di route Azure.
- Per le implementazioni VNet, devi distribuire Server di route Azure nella stessa rete virtuale di Firewall di Azure.
- Per le implementazioni vHub, Server di route Azure è già implementato e associato di default.
- Per entrambi i modelli di implementazione, devi abilitare l'auto-learning SNAT nella Firewall di Azure Policy dopo che l'associazione è completata.
- Per altre informazioni sulle opzioni di architettura Firewall di Azure, vedere Quali sono le opzioni di architettura di Firewall di Azure Manager?
Firewall VNet
Per le distribuzioni di reti virtuali, è necessario distribuire e associare Server di route Azure prima di abilitare le route SNAT apprese automaticamente.
Prerequisiti:
- Una subnet denominata RouteServerSubnet nella rete virtuale del firewall con una dimensione di almeno /27.
- Server di route Azure è distribuito nella stessa rete virtuale del tuo firewall. Per i passaggi di implementazione, consulta Quickstart: Crea e configura Route Server utilizzando il portale Azure.
Nei seguenti esempi, sostituisci i nomi delle variabili ($azureFirewallName, $rgname, $location, ecc.) con i tuoi valori.
Crea un nuovo firewall con un ID Route Server usando 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 $rgnameAssocia un Route Server a un firewall esistente usando Get-AzFirewall e Set-AzFirewall.
# 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 $rgnameCrea una nuova policy firewall con l'auto-learning abilitato usando New-AzFirewallPolicySnat e New-AzFirewallPolicy.
# 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 $rgnameAggiorna una policy firewall esistente con SNAT utilizzando New-AzFirewallPolicySnat e Set-AzFirewallPolicy.
$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 $rgnameVerifica i prefissi appresi utilizzando Get-AzFirewallLearnedIpPrefix.
Get-AzFirewallLearnedIpPrefix -Name $azureFirewallName -ResourceGroupName $rgname
firewall di vHub
Per le implementazioni vHub, Server di route Azure è già implementato e associato di default. Devi solo abilitare l'auto-apprendimento nella tua policy firewall.
Nei seguenti esempi, sostituisci i nomi delle variabili ($azureFirewallName, $rgname, $location, ecc.) con i tuoi valori.
Crea una nuova policy firewall con l'auto-learning abilitato usando New-AzFirewallPolicySnat e New-AzFirewallPolicy.
# 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 $rgnameAggiorna una policy firewall esistente con SNAT utilizzando New-AzFirewallPolicySnat e Set-AzFirewallPolicy.
$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 $rgnameOttieni l'hub virtuale usando Get-AzVirtualHub e la policy firewall usando Get-AzFirewallPolicy.
$Hub = Get-AzVirtualHub -ResourceGroupName $rgname -Name $virtualHubName $azureFirewallPolicy = Get-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgnameCrea una configurazione IP pubblica utilizzando New-AzFirewallHubPublicIpAddress e New-AzFirewallHubIpAddress.
$azureFirewallPIPs = New-AzFirewallHubPublicIpAddress -Count 1 $azureFirewallHubIPs = New-AzFirewallHubIpAddress -PublicIP $azureFirewallPIPsCrea il firewall del vHub con la policy di auto-learning usando New-AzFirewall.
$azureFirewall = New-AzFirewall -Name $azureFirewallName ` -ResourceGroupName $rgname ` -Location $location ` -VirtualHubId $Hub.Id ` -FirewallPolicyId $azureFirewallPolicy.Id ` -SkuName "AZFW_Hub" ` -HubIPAddress $azureFirewallHubIPs ` -SkuTier $FirewallTierVerifica i prefissi appresi utilizzando Get-AzFirewallLearnedIpPrefix.
Get-AzFirewallLearnedIpPrefix -Name $azureFirewallName -ResourceGroupName $rgname