Az Azure Firewall SNAT privát IP-címtartományai

Az Azure Firewall SNAT-képességet biztosít a nyilvános IP-címek felé irányuló összes kimenő forgalomhoz. Az Azure Firewall alapértelmezés szerint nem SNAT hálózati szabályokkal rendelkezik, ha a cél IP-cím az IANA RFC 1918-ra eső privát IP-címtartományban vagy az IANA RFC 6598-ra eső megosztott címtartományban található. Az alkalmazásszabályok mindig transzparens proxyt használnak, függetlenül a cél IP-címétől.

Ez a logika akkor működik jól, ha a forgalmat közvetlenül az internetre irányítja. Vannak azonban olyan esetek, amikor érdemes lehet felülbírálni az alapértelmezett SNAT-viselkedést.

  • Ha engedélyezte a kényszerített bújtatást, a rendszer az internethez kötött forgalmat az AzureFirewallSubnet egyik privát IP-címére irányítja, elrejtve a forrást a helyszíni tűzfalból.
  • Ha a szervezet az IANA RFC 1918-on vagy az IANA RFC 6598-on kívüli regisztrált IP-címtartományokat használ magánhálózatokhoz, az Azure Firewall az AzureFirewallSubnet egyik privát IP-címére irányítja a forgalmat. Az Azure Firewallt azonban úgy is konfigurálhatja, hogy ne sNAT-t állítsa be a nyilvános IP-címtartományba. Egyéni IP-cím megadásához például a következő módon adhatja meg: 192.168.1.10. Az IP-címek tartományának megadásához a következőképpen adhatja meg: 192.168.1.0/24.

Az Azure Firewall SNAT viselkedése a következő módokon módosítható:

  • Ha úgy szeretné konfigurálni az Azure Firewallt, hogy a hálózati szabályok által feldolgozott SNAT-forgalmat a cél IP-címtől függetlenül soha ne dolgozza fel, használja a 0.0.0.0/0-t magánhálózati IP-címtartományként. Ezzel a konfigurációval az Azure Firewall soha nem tudja közvetlenül az internetre irányítani a forgalmat.

  • Ha úgy szeretné konfigurálni a tűzfalat, hogy a hálózati szabályok által feldolgozott SNAT mindig a célcímtől függetlenül legyen feldolgozva, használja a 255.255.255.255/32-et magánhálózati IP-címtartományként.

  • Az Azure Firewall konfigurálható úgy, hogy óránként automatikusan tanulja meg a regisztrált és a privát tartományokat, és használja az SNAT tanult útvonalait. Ennek az előzetes verziójú funkciónak az Azure Route Servert ugyanabban a virtuális hálózaton kell üzembe helyeznie, mint az Azure Firewall.

Fontos

A privát címtartomány konfigurációja csak a hálózati szabályokra vonatkozik. Az alkalmazásszabályok jelenleg mindig SNAT-t használnak.

Fontos

Ha saját privát IP-címtartományokat szeretne megadni, és meg szeretné tartani az alapértelmezett IANA RFC 1918-címtartományokat, győződjön meg arról, hogy az egyéni lista továbbra is tartalmazza az IANA RFC 1918-tartományt.

Az SNAT privát IP-címeit az alábbi módszerekkel konfigurálhatja. Az SNAT privát címeit a konfigurációnak megfelelő módszerrel kell konfigurálnia. A tűzfalszabályzathoz társított tűzfalaknak meg kell adniuk a házirend tartományát, és nem kell használniuk AdditionalProperties.

Metódus Klasszikus szabályok használata Tűzfalszabályzat használata
Azure Portalra támogatott támogatott
Azure PowerShell Konfigurálja PrivateRange jelenleg nem támogatott
Azure CLI Konfigurálja --private-ranges jelenleg nem támogatott
ARM-sablon konfigurálás AdditionalProperties tűzfaltulajdonságban konfigurálás snat/privateRanges tűzfalszabályzatban

SNAT privát IP-címtartományok konfigurálása – Azure PowerShell

Klasszikus szabályok

Az Azure PowerShell használatával privát IP-címtartományokat adhat meg a tűzfalhoz.

Feljegyzés

A tűzfaltulajdonság PrivateRange figyelmen kívül lesz hagyva a tűzfalszabályzathoz társított tűzfalak esetében. A tulajdonságot az SNAT SNAT privát IP-címtartományainak konfigurálása – ARM-sablonban leírtak szerint kell használnia.firewallPolicies

Új tűzfal

A klasszikus szabályokat használó új tűzfal esetében az Azure PowerShell-parancsmag a következő:

$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

Feljegyzés

Az Azure Firewall New-AzFirewall üzembe helyezéséhez meglévő virtuális hálózatra és nyilvános IP-címre van szükség. Az Azure Firewall üzembe helyezése és konfigurálása az Azure PowerShell használatával teljes üzembe helyezési útmutatót nyújt.

Feljegyzés

Az IANAPrivateRanges ki van bontva az Azure Firewall aktuális alapértelmezett beállításaira, míg a többi tartomány hozzá lesz adva. Ahhoz, hogy az IANAPrivateRanges alapértelmezett legyen a privát tartomány specifikációjában, a specifikációban PrivateRange kell maradnia az alábbi példáknak megfelelően.

További információ: New-AzFirewall.

Meglévő tűzfal

Meglévő tűzfal klasszikus szabályokkal való konfigurálásához használja az alábbi Azure PowerShell-parancsmagokat:

$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 privát IP-címtartományok konfigurálása – Azure CLI

Klasszikus szabályok

Az Azure CLI-vel klasszikus szabályokkal adhat meg privát IP-címtartományokat a tűzfalhoz.

Új tűzfal

Klasszikus szabályokat használó új tűzfal esetén az Azure CLI-parancs a következő:

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

Feljegyzés

Az Azure Firewall Azure CLI-paranccsal az network firewall create történő üzembe helyezéséhez további konfigurációs lépések szükségesek a nyilvános IP-címek és AZ IP-konfiguráció létrehozásához. A teljes üzembe helyezési útmutatóért tekintse meg az Azure Firewall üzembe helyezését és konfigurálását az Azure CLI használatával.

Feljegyzés

Az IANAPrivateRanges ki van bontva az Azure Firewall aktuális alapértelmezett beállításaira, míg a többi tartomány hozzá lesz adva. Ahhoz, hogy az IANAPrivateRanges alapértelmezett legyen a privát tartomány specifikációjában, a specifikációban private-ranges kell maradnia az alábbi példáknak megfelelően.

Meglévő tűzfal

Meglévő tűzfal klasszikus szabályokkal való konfigurálásához az Azure CLI-parancs a következő:

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

SNAT privát IP-címtartományok konfigurálása – ARM-sablon

Klasszikus szabályok

Ha az ARM-sablon üzembe helyezése során szeretné konfigurálni az SNAT-t, adja hozzá a következőket a additionalProperties tulajdonsághoz:

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

Tűzfalszabályzat

A tűzfalszabályzathoz társított Azure Firewallok a 2020-11-01 API-verzió óta támogatják az SNAT privát tartományait. Jelenleg sablonnal frissítheti az SNAT privát tartományát a tűzfalszabályzaton. Az alábbi minta konfigurálja a tűzfalat, hogy mindig SNAT hálózati forgalmat hajtson végre:

{ 

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

SNAT privát IP-címtartományok konfigurálása – Azure Portal

Klasszikus szabályok

Az Azure Portal használatával megadhatja a tűzfal magánhálózati IP-címtartományait.

  1. Válassza ki az erőforráscsoportot, majd válassza ki a tűzfalat.

  2. Az Áttekintés lapon válassza ki az alapértelmezett IANA RFC 1918-at.

    Megnyílik a Magánhálózati IP-előtagok szerkesztése lap:

    Screenshot of edit private IP prefixes.

  3. Alapértelmezés szerint az IANAPrivateRanges konfigurálva van.

  4. Szerkessze a környezet magánhálózati IP-címtartományait, majd válassza a Mentés lehetőséget.

Tűzfalszabályzat

  1. Válassza ki az erőforráscsoportot, majd válassza ki a tűzfalszabályzatot.

  2. Válassza ki a privát IP-címtartományokat (SNAT) a Gépház oszlopban.

  3. Az SNAT-konfiguráció testreszabásához válassza ki a környezet SNAT-jának végrehajtásához szükséges feltételeket az SNAT végrehajtása területen. Screenshot of Private IP ranges (SNAT).

  4. Válassza az Alkalmazás lehetőséget.

SNAT-útvonalak automatikus elsajátítása (előzetes verzió)

Az Azure Firewall konfigurálásával 30 percenként automatikusan elsajátíthatja a regisztrált és a privát tartományokat is. Ezeket a tanult címtartományokat a rendszer a hálózat belsőnek tekinti, így a tanult tartományokban lévő célhelyekre történő forgalom nem lesz SNATed. Az automatikusan elsajátított SNAT-tartományokhoz az Azure Route Servert ugyanabban a virtuális hálózaton kell üzembe helyezni, mint az Azure Firewall. A tűzfalat az Azure Route Serverhez kell társítani, és úgy kell konfigurálni, hogy automatikusan elsajátítsa az SNAT-tartományokat az Azure Tűzfalszabályzatban. Jelenleg arm-sablont, Azure PowerShellt vagy Azure Portalt használhat az automatikusan elsajátított SNAT-útvonalak konfigurálásához.

Feljegyzés

Az automatikusan elsajátított SNAT-útvonalak csak virtuális hálózatokon (központi virtuális hálózaton) érhetőek el. Ez nem érhető el VWAN-üzemelő példányokon (biztonságos virtuális központ). További információ az Azure Firewall architektúrabeállításairól: Mik az Azure Firewall Manager architektúrabeállításai?

Konfigurálás ARM-sablon használatával

Az automatikus tanulás konfigurálásához használja az alábbi JSON-t. Az Azure Firewallnak egy Azure Route Serverhez kell társítania.

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

Azure Route Server társításához használja a következő JSON-t:

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

Konfigurálás az Azure PowerShell használatával

  • Hozzon létre egy új tűzfalat RouteServerId azonosítóval.

    # 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 
    
  • Meglévő tűzfal frissítése a RouteServerId azonosítóval

    # 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
    
    
  • Új tűzfalszabályzat létrehozása a megadott SNAT-paraméterrel

    # 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 
    
    
  • Meglévő tűzfalszabályzat frissítése az SNAT-vel

    $snat = New-AzFirewallPolicySnat -PrivateRange $privateRange2 
    
    # Set AzureFirewallPolicy 
    $azureFirewallPolicy.Snat = $snat 
    Set-AzFirewallPolicy -InputObject $azureFirewallPolicy 
    
    # Do Get and Verify 
    Get-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgname 
    
  • Tűzfal tanult előtagjainak lekérése

      Get-AzFirewallLearnedIpPrefix -Name $azureFirewallName -ResourceGroupName $rgname 
    

Konfigurálás az Azure Portal használatával

A portálon útvonalkiszolgálót társíthat az Azure Firewallhoz az automatikusan elsajátított SNAT-útvonalak (előzetes verzió) konfigurálásához.

A portálon hajtsa végre a következő feladatokat:

  • Adjon hozzá egy RouteServerSubnet nevű alhálózatot a meglévő tűzfal virtuális hálózatához. Az alhálózat méretének legalább /27-esnek kell lennie.
  • Útválasztási kiszolgáló üzembe helyezése a meglévő tűzfal virtuális hálózatán. Az Azure Route Serverrel kapcsolatos információkért tekintse meg a rövid útmutatót: Route Server létrehozása és konfigurálása az Azure Portal használatával.
  • Adja hozzá az útvonalkiszolgálót az Learned SNAT IP-előtagok (előzetes verzió) tűzfalhoz. Screenshot showing firewall add a route server.
  • Módosítsa a tűzfalszabályzatot az Automatikus tanulás IP-előtagjainak (előzetes verzió) engedélyezéséhez a Privát IP-tartományok (SNAT) szakaszban. Screenshot showing firewall policy Private IP ranges (SNAT) settings.
  • A tanult útvonalakat a Learned SNAT IP-előtagok (előzetes verzió) oldalán tekintheti meg.

Következő lépések