Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A kimenő hálózati hozzáférés ellenőrzése az általános hálózati biztonsági terv fontos részét képezi. Előfordulhat például, hogy korlátozni szeretné a webhelyekhez való hozzáférést. Vagy korlátozhatja a kimenő IP-címeket és portokat, amelyek elérhetők.
Az Azure-alhálózatok kimenő hálózati hozzáférését az Azure Firewall és a Tűzfalszabályzat használatával szabályozhatja. Az Azure Firewall használatával konfigurálhatja a következőt:
- Alkalmazásszabályokat, amelyek egy alhálózatról elérhető teljes tartományneveket (FQDN) határoznak meg.
- Hálózatszabályokat, amelyek forráscímet, protokollt, valamint célportot és célcímet határoznak meg.
A hálózati forgalmat a konfigurált tűzfalszabályok irányítják, ha alapértelmezett alhálózati átjáróként irányítja a tűzfalhoz a forgalmat.
Ebben a cikkben egy egyszerűsített, három alhálózattal rendelkező virtuális hálózatot hoz létre az egyszerű üzembe helyezés érdekében. Üzembe helyezéskor használjon egy hub és küllős modellt, ahol a tűzfal a saját virtuális hálózatában van. A számítási feladatok kiszolgálói ugyanabban a régióban egy vagy több alhálózattal rendelkező társhálózatok virtuális hálózataiban találhatók.
- AzureFirewallSubnet – ezen az alhálózaton található a tűzfal.
- Workload-SN – ezen az alhálózaton található a számítási feladat kiszolgálója. Ennek az alhálózatnak a hálózati forgalma a tűzfalon halad át.
- AzureBastionSubnet – az Azure Bastionhoz használt alhálózat, amely a számítási feladat kiszolgálóhoz való csatlakozásra szolgál.
További információ az Azure Bastionról: Mi az Az Azure Bastion?
Fontos
Az óránkénti díjszabás a Bastion üzembe helyezésének pillanatától kezdődik, a kimenő adathasználattól függetlenül. További információ: Díjszabás és termékváltozatok. Ha a Bastiont egy oktatóanyag vagy teszt részeként helyezi üzembe, javasoljuk, hogy a használat befejezése után törölje ezt az erőforrást.
Ebben a cikkben az alábbiakkal ismerkedhet meg:
- Tesztelési hálózati környezet beállítása
- Tűzfal telepítése
- Alapértelmezett útvonal létrehozása
- Tűzfalszabályzat létrehozása
- Alkalmazásszabály konfigurálása a www.google.com való hozzáférés engedélyezéséhez
- Hálózatszabály konfigurálása külső DNS-kiszolgálókhoz való hozzáférés engedélyezéséhez
- A tűzfal tesztelése
Ha szeretné, az Azure Portalon végezheti el ezt az eljárást.
Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.
Előfeltételek
Ehhez az eljáráshoz helyileg kell futtatnia a PowerShellt. Telepítve kell lennie az Azure PowerShell-modulnak. A verzió azonosításához futtassa a következőt: Get-Module -ListAvailable Az. Ha frissíteni szeretne, olvassa el az Azure PowerShell-modul telepítését ismertető cikket. A PowerShell-verzió ellenőrzése után futtassa az Connect-AzAccount parancsot az Azure-hoz való kapcsolódáshoz.
A hálózat beállítása
Először is hozzon létre egy erőforráscsoportot, amely a tűzfal üzembe helyezéséhez szükséges erőforrásokat tartalmazza. Ezután hozzon létre egy virtuális hálózatot, alhálózatokat és tesztkiszolgálókat.
Erőforráscsoport létrehozása
A New-AzResourceGroup használatával hozzon létre egy erőforráscsoportot az üzembe helyezéshez:
New-AzResourceGroup -Name Test-FW-RG -Location "East US"
Virtuális hálózat és Azure Bastion-gazdagép létrehozása
Ennek a virtuális hálózatnak három alhálózata van. A New-AzVirtualNetworkSubnetConfig használatával definiálja őket:
Megjegyzés
Az AzureFirewallSubnet alhálózat mérete /26. Az alhálózat méretével kapcsolatos további információkért tekintse meg az Azure Firewall gyakori kérdéseit.
$Bastionsub = New-AzVirtualNetworkSubnetConfig `
-Name AzureBastionSubnet `
-AddressPrefix 10.0.0.0/27
$FWsub = New-AzVirtualNetworkSubnetConfig `
-Name AzureFirewallSubnet `
-AddressPrefix 10.0.1.0/26
$Worksub = New-AzVirtualNetworkSubnetConfig `
-Name Workload-SN `
-AddressPrefix 10.0.2.0/24
A New-AzVirtualNetwork használatával hozza létre a virtuális hálózatot:
$testVnet = New-AzVirtualNetwork `
-Name Test-FW-VN `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-AddressPrefix 10.0.0.0/16 `
-Subnet $Bastionsub, $FWsub, $Worksub
Nyilvános IP-cím létrehozása az Azure Bastion-gazdagéphez
A New-AzPublicIpAddress használatával statikus nyilvános IP-címet hozhat létre a Bastion-gazdagép számára:
$publicip = New-AzPublicIpAddress `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-Name Bastion-pip `
-AllocationMethod Static `
-Sku Standard
Azure Bastion-gazdagép létrehozása
A Bastion-gazdagép létrehozásához használja a New-AzBastiont :
New-AzBastion `
-ResourceGroupName Test-FW-RG `
-Name Bastion-01 `
-PublicIpAddress $publicip `
-VirtualNetwork $testVnet
Virtuális gép létrehozása
A New-AzVM használatával hozza létre a számítási feladat virtuális gépét. Amikor a rendszer kéri, adjon meg egy felhasználónevet és jelszót:
# Create the NIC
$wsn = Get-AzVirtualNetworkSubnetConfig `
-Name Workload-SN `
-VirtualNetwork $testVnet
$NIC01 = New-AzNetworkInterface `
-Name Srv-Work `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-Subnet $wsn
# Define the virtual machine
$VirtualMachine = New-AzVMConfig `
-VMName Srv-Work `
-VMSize "Standard_DS2"
$VirtualMachine = Set-AzVMOperatingSystem `
-VM $VirtualMachine `
-Windows `
-ComputerName Srv-Work `
-ProvisionVMAgent `
-EnableAutoUpdate
$VirtualMachine = Add-AzVMNetworkInterface `
-VM $VirtualMachine `
-Id $NIC01.Id
$VirtualMachine = Set-AzVMSourceImage `
-VM $VirtualMachine `
-PublisherName 'MicrosoftWindowsServer' `
-Offer 'WindowsServer' `
-Skus '2019-Datacenter' `
-Version latest
# Create the virtual machine
New-AzVM `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-VM $VirtualMachine `
-Verbose
Tűzfalszabályzat létrehozása
A New-AzFirewallPolicy használatával hozza létre a tűzfalszabályzatot:
$fwpol = New-AzFirewallPolicy `
-Name fw-pol `
-ResourceGroupName Test-FW-RG `
-Location "East US"
Tűzfalszabályzat alkalmazásszabályának konfigurálása
A New-AzFirewallPolicyApplicationRule és a New-AzFirewallPolicyFilterRuleCollection használatával hozzon létre egy olyan alkalmazásszabályt, amely kimenő hozzáférést biztosít a következőhöz www.google.com:
$RCGroup = New-AzFirewallPolicyRuleCollectionGroup `
-Name AppRCGroup `
-Priority 100 `
-FirewallPolicyObject $fwpol
$apprule1 = New-AzFirewallPolicyApplicationRule `
-Name Allow-google `
-SourceAddress "10.0.2.0/24" `
-Protocol "http:80","https:443" `
-TargetFqdn www.google.com
$appcoll1 = New-AzFirewallPolicyFilterRuleCollection `
-Name App-coll01 `
-Priority 100 `
-Rule $apprule1 `
-ActionType "Allow"
Set-AzFirewallPolicyRuleCollectionGroup `
-Name $RCGroup.Name `
-Priority 100 `
-RuleCollection $appcoll1 `
-FirewallPolicyObject $fwpol
Az Azure Firewall tartalmaz egy beépített szabálygyűjteményt az infrastruktúra alapértelmezés szerint engedélyezett teljes tartományneveiről. Ezek a teljes tartománynevek a platformra vonatkoznak, és más célokra nem használhatók. További információ: Infrastruktúra FQDN-jei.
Tűzfalszabályzat hálózati szabályának konfigurálása
A New-AzFirewallPolicyNetworkRule és a New-AzFirewallPolicyFilterRuleCollection használatával hozzon létre egy hálózati szabályt, amely kimenő hozzáférést biztosít két IP-címhez az 53-es porton (DNS):
$RCGroup = New-AzFirewallPolicyRuleCollectionGroup `
-Name NetRCGroup `
-Priority 200 `
-FirewallPolicyObject $fwpol
$netrule1 = New-AzFirewallPolicyNetworkRule `
-Name Allow-DNS `
-Protocol UDP `
-SourceAddress 10.0.2.0/24 `
-DestinationAddress 209.244.0.3,209.244.0.4 `
-DestinationPort 53
$netcoll1 = New-AzFirewallPolicyFilterRuleCollection `
-Name Net-coll01 `
-Priority 200 `
-Rule $netrule1 `
-ActionType "Allow"
Set-AzFirewallPolicyRuleCollectionGroup `
-Name $RCGroup.Name `
-Priority 200 `
-RuleCollection $netcoll1 `
-FirewallPolicyObject $fwpol
A tűzfal üzembe helyezése
A New-AzPublicIpAddress és a New-AzFirewall használatával telepítse a tűzfalat a virtuális hálózaton:
# Get a Public IP for the firewall
$FWpip = New-AzPublicIpAddress `
-Name "fw-pip" `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-AllocationMethod Static `
-Sku Standard
# Create the firewall
$Azfw = New-AzFirewall `
-Name Test-FW01 `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-VirtualNetwork $testVnet `
-PublicIpAddress $FWpip `
-FirewallPolicyId $fwpol.Id
# Save the firewall private IP address for future use
$AzfwPrivateIP = $Azfw.IpConfigurations.privateipaddress
$AzfwPrivateIP
Jegyezze fel a magánhálózati IP-címet. Ezt később használhatja az alapértelmezett útvonal létrehozásakor.
Alapértelmezett útvonal létrehozása
A New-AzRouteTable és az Add-AzRouteConfig használatával hozzon létre egy útvonaltáblát egy alapértelmezett útvonallal, amely a tűzfalra mutat, majd társítsa a számítási feladat alhálózatához:
$routeTableDG = New-AzRouteTable `
-Name Firewall-rt-table `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-DisableBgpRoutePropagation
# Create a route
Add-AzRouteConfig `
-Name "DG-Route" `
-RouteTable $routeTableDG `
-AddressPrefix 0.0.0.0/0 `
-NextHopType "VirtualAppliance" `
-NextHopIpAddress $AzfwPrivateIP `
| Set-AzRouteTable
# Associate the route table to the subnet
Set-AzVirtualNetworkSubnetConfig `
-VirtualNetwork $testVnet `
-Name Workload-SN `
-AddressPrefix 10.0.2.0/24 `
-RouteTable $routeTableDG | Set-AzVirtualNetwork
Módosítsa az Srv-Work hálózati adapter elsődleges és másodlagos DNS-címét.
Ebben az eljárásban tesztelési célokra konfigurálja a kiszolgáló elsődleges és másodlagos DNS-címét. Ez a konfiguráció nem általános Azure Firewall-követelmény.
$NIC01.DnsSettings.DnsServers.Add("209.244.0.3")
$NIC01.DnsSettings.DnsServers.Add("209.244.0.4")
$NIC01 | Set-AzNetworkInterface
A tűzfal tesztelése
Most tesztelje a tűzfalat, hogy ellenőrizze, hogy a várt módon működik-e.
Csatlakozzon a Srv-Work virtuális géphez a Bastion használatával, és jelentkezzen be.
A Srv-Work-on nyisson meg egy PowerShell-ablakot, és futtassa a következő parancsokat:
nslookup www.google.com nslookup www.microsoft.comMindkét parancs választ ad vissza, amely azt mutatja, hogy a DNS-lekérdezések átjutnak a tűzfalon.
Futtassa az alábbi parancsot:
Invoke-WebRequest -Uri https://www.google.com Invoke-WebRequest -Uri https://www.microsoft.comA
www.google.comkérések sikeresek, és awww.microsoft.comkérések sikertelenek. Ez az eredmény azt mutatja, hogy a tűzfalszabályok a várt módon működnek.
Most ellenőrizte, hogy a tűzfalszabályzat szabályai működnek-e:
- A DNS-neveket a konfigurált külső DNS-kiszolgálóval oldhatja fel.
- Az egyetlen engedélyezett FQDN-t el tudja érni, de másokat nem.
Az erőforrások rendezése
A tűzfal erőforrásait továbbra is használhatja a további teszteléshez. Ha már nincs rájuk szüksége, törölje a Test-FW-RG erőforráscsoportot az összes tűzfallal kapcsolatos erőforrás törléséhez:
Remove-AzResourceGroup -Name Test-FW-RG