SNAT özel IP adresi aralıklarını Azure Güvenlik Duvarı

Azure Güvenlik Duvarı, genel IP adreslerine giden tüm trafik için SNAT özelliği sağlar. Varsayılan olarak, hedef IP adresi IANA RFC 1918 başına özel IP adresi aralığında veya IANA RFC 6598 başına paylaşılan adres alanında olduğunda Azure Güvenlik Duvarı Ağ kurallarıyla SNAT yapmaz. Uygulama kuralları her zaman hedef IP adresi ne olursa olsun saydam bir ara sunucu kullanılarak SNATed edilir.

Bu mantık, trafiği doğrudan İnternet’e yönlendirdiğinizde düzgün çalışır. Ancak, varsayılan SNAT davranışını geçersiz kılmak isteyebileceğiniz senaryolar vardır.

  • Zorlamalı tüneli etkinleştirdiyseniz, İnternet'e bağlı trafik AzureFirewallSubnet'teki güvenlik duvarı özel IP adreslerinden birine bağlanır ve kaynağı şirket içi güvenlik duvarınızdan gizler.
  • Kuruluşunuz özel ağlar için IANA RFC 1918 veya IANA RFC 6598 dışında kayıtlı IP adresi aralıkları kullanıyorsa Azure Güvenlik Duvarı Trafiği AzureFirewallSubnet'teki güvenlik duvarı özel IP adreslerinden birine yönlendirir. Ancak, Azure Güvenlik Duvarı genel IP adresi aralığınızı SNAT olmayacak şekilde yapılandırabilirsiniz. Örneğin, tek bir IP adresi belirtmek için şu şekilde belirtebilirsiniz: 192.168.1.10. Bir IP adresi aralığı belirtmek için şunu belirtebilirsiniz: 192.168.1.0/24.

Azure Güvenlik Duvarı SNAT davranışı aşağıdaki yollarla değiştirilebilir:

  • Azure Güvenlik Duvarı hedef IP adresinden bağımsız olarak ağ kuralları tarafından işlenmez SNAT trafiğini yapılandıracak şekilde yapılandırmak için, özel IP adresi aralığınız olarak 0.0.0.0/0 kullanın. Bu yapılandırmayla Azure Güvenlik Duvarı trafiği hiçbir zaman doğrudan İnternet'e yönlendiremez.

  • Güvenlik duvarını hedef adrese bakılmaksızın her zaman ağ kuralları tarafından işlenen SNAT olarak yapılandırmak için, özel IP adresi aralığınız olarak 255.255.255.255/32 kullanın.

  • Azure Güvenlik Duvarı, kayıtlı ve özel aralıkları saatte bir otomatik olarak öğrenecek ve SNAT için öğrenilen yolları kullanacak şekilde yapılandırılabilir. Bu önizleme özelliğinin Azure Route Server'ın Azure Güvenlik Duvarı ile aynı sanal ağda dağıtılmış olması gerekir.

Önemli

Özel adres aralığı yapılandırması yalnızca ağ kuralları için geçerlidir. Şu anda uygulama kuralları her zaman SNAT'dır.

Önemli

Kendi özel IP adresi aralıklarınızı belirtmek ve varsayılan IANA RFC 1918 adres aralıklarını korumak istiyorsanız, özel listenizin hala IANA RFC 1918 aralığını içerdiğinden emin olun.

SNAT özel IP adreslerini aşağıdaki yöntemleri kullanarak yapılandırabilirsiniz. Yapılandırmanıza uygun yöntemi kullanarak SNAT özel adreslerini yapılandırmanız gerekir. Güvenlik duvarı ilkesiyle ilişkilendirilmiş güvenlik duvarları, ilkedeki aralığı belirtmelidir ve kullanmamalıdır AdditionalProperties.

Metot Klasik kuralları kullanma Güvenlik duvarı ilkesini kullanma
Azure portal destekleniyor destekleniyor
Azure PowerShell Yapılandırmak PrivateRange şu anda desteklenmiyor
Azure CLI Yapılandırmak --private-ranges şu anda desteklenmiyor
ARM şablonu güvenlik duvarı özelliğinde yapılandırma AdditionalProperties güvenlik duvarı ilkesinde yapılandırma snat/privateRanges

SNAT özel IP adresi aralıklarını yapılandırma - Azure PowerShell

Klasik kurallar

Güvenlik duvarı için özel IP adresi aralıkları belirtmek için Azure PowerShell'i kullanabilirsiniz.

Not

Bir Güvenlik Duvarı PrivateRange İlkesi ile ilişkili güvenlik duvarları için güvenlik duvarı özelliği yoksayılır. özelliğini firewallPolicies SNAT özel IP adresi aralıklarını yapılandırma - ARM şablonu bölümünde açıklandığı gibi kullanmalısınızSNAT.

Yeni güvenlik duvarı

Klasik kuralları kullanan yeni bir güvenlik duvarı için Azure PowerShell cmdlet'i şöyledir:

$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

Not

kullanarak New-AzFirewall Azure Güvenlik Duvarı dağıtmak için mevcut bir sanal ağ ve Genel IP adresi gerekir. Tam dağıtım kılavuzu için bkz. Azure PowerShell kullanarak Azure Güvenlik Duvarı dağıtma ve yapılandırma.

Not

IANAPrivateRanges, Azure Güvenlik Duvarı'da geçerli varsayılanlara genişletilirken, diğer aralıklar buna eklenir. IANAPrivateRanges varsayılan değerini özel aralık belirtiminizde tutmak için, aşağıdaki örneklerde gösterildiği gibi belirtiminizde PrivateRange kalmalıdır.

Daha fazla bilgi için bkz . New-AzFirewall.

Mevcut güvenlik duvarı

Klasik kuralları kullanarak mevcut bir güvenlik duvarını yapılandırmak için aşağıdaki Azure PowerShell cmdlet'lerini kullanın:

$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 özel IP adresi aralıklarını yapılandırma - Azure CLI

Klasik kurallar

Azure CLI'yi kullanarak klasik kuralları kullanarak güvenlik duvarı için özel IP adresi aralıkları belirtebilirsiniz.

Yeni güvenlik duvarı

Klasik kuralları kullanan yeni bir güvenlik duvarı için Azure CLI komutu şöyledir:

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

Not

Azure CLI komutunu az network firewall create kullanarak Azure Güvenlik Duvarı dağıtmak için genel IP adresleri ve IP yapılandırması oluşturmak için ek yapılandırma adımları gerekir. Tam dağıtım kılavuzu için bkz. Azure CLI kullanarak Azure Güvenlik Duvarı dağıtma ve yapılandırma.

Not

IANAPrivateRanges, Azure Güvenlik Duvarı'da geçerli varsayılanlara genişletilirken, diğer aralıklar buna eklenir. IANAPrivateRanges varsayılan değerini özel aralık belirtiminizde tutmak için, aşağıdaki örneklerde gösterildiği gibi belirtiminizde private-ranges kalmalıdır.

Mevcut güvenlik duvarı

Klasik kuralları kullanarak mevcut bir güvenlik duvarını yapılandırmak için Azure CLI komutu şöyledir:

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

SNAT özel IP adresi aralıklarını yapılandırma - ARM şablonu

Klasik kurallar

ARM Şablonu dağıtımı sırasında SNAT'yi yapılandırmak için özelliğine additionalProperties aşağıdakileri ekleyebilirsiniz:

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

Güvenlik duvarı ilkesi

Güvenlik duvarı ilkesiyle ilişkili Azure Güvenlik Duvarı, 2020-11-01 API sürümünden bu yana SNAT özel aralıklarını desteklemektedir. Şu anda, Güvenlik Duvarı İlkesi'nin SNAT özel aralığını güncelleştirmek için bir şablon kullanabilirsiniz. Aşağıdaki örnek, güvenlik duvarını her zaman SNAT ağ trafiğine göre yapılandırılır:

{ 

            "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 özel IP adresi aralıklarını yapılandırma - Azure portalı

Klasik kurallar

Güvenlik duvarı için özel IP adresi aralıkları belirtmek için Azure portalını kullanabilirsiniz.

  1. Kaynak grubunuzu ve ardından güvenlik duvarınızı seçin.

  2. Genel Bakış sayfasında, Özel IP Aralıkları'nda varsayılan IANA RFC 1918 değerini seçin.

    Özel IP Ön Eklerini Düzenle sayfası açılır:

    Screenshot of edit private IP prefixes.

  3. Varsayılan olarak, IANAPrivateRanges yapılandırılır.

  4. Ortamınız için özel IP adresi aralıklarını düzenleyin ve kaydet'i seçin.

Güvenlik duvarı ilkesi

  1. Kaynak grubunuzu ve ardından güvenlik duvarı ilkenizi seçin.

  2. Ayarlar sütununda Özel IP aralıkları (SNAT) öğesini seçin.

  3. SNAT yapılandırmasını özelleştirmek için SNAT gerçekleştir'in altında ortamınız için SNAT gerçekleştirme koşullarını seçin. Screenshot of Private IP ranges (SNAT).

  4. Uygula'yı seçin.

SNAT yollarını otomatik öğrenme (önizleme)

her 30 dakikada bir hem kayıtlı hem de özel aralıkları otomatik olarak öğrenmek için Azure Güvenlik Duvarı yapılandırabilirsiniz. Bu öğrenilen adres aralıklarının ağ içinde olduğu kabul edilir, bu nedenle öğrenilen aralıklardaki hedeflere gelen trafik SNATed değildir. Otomatik öğrenme SNAT aralıkları, Azure Route Server'ın Azure Güvenlik Duvarı ile aynı sanal ağda dağıtılması gerekir. Güvenlik duvarıNın Azure Route Server ile ilişkilendirilmesi ve Azure Güvenlik Duvarı İlkesi'nde SNAT aralıklarını otomatik olarak öğrenecek şekilde yapılandırılması gerekir. Otomatik öğrenme SNAT yollarını yapılandırmak için şu anda bir ARM şablonu, Azure PowerShell veya Azure portalı kullanabilirsiniz.

Not

Otomatik öğrenme SNAT yolları yalnızca sanal ağ dağıtımlarında (hub sanal ağı) kullanılabilir. VWAN dağıtımlarında (güvenli sanal merkez) kullanılamaz. Azure Güvenlik Duvarı mimari seçenekleri hakkında daha fazla bilgi için bkz. Azure Güvenlik Duvarı Manager mimari seçenekleri nelerdir?

ARM şablonu kullanarak yapılandırma

Otomatik öğrenmeyi yapılandırmak için aşağıdaki JSON'ı kullanabilirsiniz. Azure Güvenlik Duvarı bir Azure Route Sunucusu ile ilişkilendirilmelidir.

	  "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'ı ilişkilendirmek için aşağıdaki JSON'yi kullanın:

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

Azure PowerShell kullanarak yapılandırma

  • RouteServerId ile yeni bir güvenlik duvarı oluşturun.

    # 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 
    
  • Mevcut bir güvenlik duvarını RouteServerId ile güncelleştirme

    # 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
    
    
  • SNAT parametresi sağlanan yeni güvenlik duvarı ilkesi oluşturma

    # 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 
    
    
  • Mevcut güvenlik duvarı ilkesini SNAT ile güncelleştirme

    $snat = New-AzFirewallPolicySnat -PrivateRange $privateRange2 
    
    # Set AzureFirewallPolicy 
    $azureFirewallPolicy.Snat = $snat 
    Set-AzFirewallPolicy -InputObject $azureFirewallPolicy 
    
    # Do Get and Verify 
    Get-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgname 
    
  • Güvenlik Duvarı Öğrenilen Ön Ekleri Alma

      Get-AzFirewallLearnedIpPrefix -Name $azureFirewallName -ResourceGroupName $rgname 
    

Azure portalını kullanarak yapılandırma

Otomatik öğrenme SNAT yollarını (önizleme) yapılandırmak üzere bir Yönlendirme Sunucusunu Azure Güvenlik Duvarı ile ilişkilendirmek için portalı kullanabilirsiniz.

Aşağıdaki görevleri tamamlamak için portalı kullanın:

  • Mevcut güvenlik duvarı sanal ağınıza RouteServerSubnet adlı bir alt ağ ekleyin. Alt ağın boyutu en az /27 olmalıdır.
  • Mevcut güvenlik duvarı sanal asına bir Rota Sunucusu dağıtın. Azure Route Server hakkında daha fazla bilgi için bkz . Hızlı Başlangıç: Azure portalını kullanarak Yönlendirme Sunucusu oluşturma ve yapılandırma.
  • Güvenlik duvarı Öğrenilen SNAT IP Ön Ekleri (önizleme) sayfasına yol sunucusunu ekleyin. Screenshot showing firewall add a route server.
  • Özel IP aralıkları (SNAT) bölümünde Otomatik öğrenme IP ön eklerini (önizleme) etkinleştirmek için güvenlik duvarı ilkenizi değiştirin. Screenshot showing firewall policy Private IP ranges (SNAT) settings.
  • Öğrenilen yolları, Öğrenilen SNAT IP Ön Ekleri (önizleme) sayfasında görebilirsiniz.

Sonraki adımlar