Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Azure Firewall ve verzi Standard můžete migrovat na Azure Firewall Premium, abyste mohli využít nové funkce Premium. Další informace o funkcích služby Azure Firewall Premium najdete v tématu Funkce služby Azure Firewall Premium.
Tento článek vás provede požadovanými kroky k ruční migraci vaší standardní brány firewall a zásad na úroveň Premium.
Tip
Nejjednodušší způsob, jak změnit skladovou položku služby Azure Firewall bez výpadků, je použít funkci Změnit skladovou položku. Další informace najdete v tématu Snadné upgrade nebo downgrade služby Azure Firewall.
Než začnete s migrací, seznamte se s aspekty výkonu a naplánujte předem požadované časové období údržby . Očekává se typická doba výpadku 20 až 30 minut.
Pro úspěšnou migraci se vyžadují následující obecné kroky:
- Vytvořte nové zásady Premium na základě stávajících standardních zásad nebo klasických pravidel. Na konci tohoto kroku budou vaše nové zásady Premium zahrnovat všechna vaše stávající pravidla a nastavení zásad.
- Migrace služby Azure Firewall ze standardu na Premium s využitím zastavení a spuštění
- Připojte nově vytvořenou politiku Premium k vaší bráně Firewall Premium.
Důležité
Upgrade standardního firewallu nasazeného v jihovýchodní Asii se zónami dostupnosti není v současné době podporován.
Pokud k nasazení služby Azure Firewall použijete Terraform, můžete k migraci na Azure Firewall Premium použít Terraform. Další informace najdete v tématu Migrace služby Azure Firewall Standard na Premium pomocí Terraformu.
Důležité informace o výkonu
Při migraci ze standardní skladové položky je potřeba zvážit výkon. Kontrola ZPS a TLS jsou výpočetní operace náročné na výpočetní výkon. Skladová položka Premium používá výkonnější skladovou položku virtuálního počítače, která se škáluje na vyšší propustnost srovnatelnou se standardní skladovou jednotkou. Další informace o výkonu služby Azure Firewall najdete v tématu Výkon služby Azure Firewall.
Microsoft doporučuje zákazníkům provádět kompletní testování v nasazení Azure, aby zajistil, že výkon služby firewall splňuje vaše očekávání.
Odstávka
Migrujte bránu firewall během plánovaného času údržby, protože dojde k výpadku, když migrujete Azure Firewall ze standardu na prémiovou úroveň pomocí zastavení a spuštění.
Migrace klasických pravidel na zásady Standard
Během procesu migrace možná budete muset migrovat pravidla klasické brány firewall na standardní zásady. Můžete to udělat pomocí webu Azure Portal:
Na webu Azure Portal vyberte standardní bránu firewall. Na stránce Přehled vyberte Migrovat na zásady brány firewall.
Na stránce Migrace zásady brány firewall vyberte Zkontrolovat a vytvořit.
Vyberte Vytvořit.
Dokončení nasazení trvá několik minut.
K vytvoření zásad můžete také migrovat existující klasická pravidla ze služby Azure Firewall pomocí Azure PowerShellu. Další informace najdete v tématu Migrace konfigurací služby Azure Firewall do zásad služby Azure Firewall pomocí PowerShellu.
Migrace existujících zásad pomocí Azure PowerShellu
Transform-Policy.ps1
je skript Azure PowerShellu, který vytvoří novou zásadu Premium z existující zásady Standard.
Při zadání standardního ID zásad brány firewall skript změní tyto zásady na zásady brány firewall Azure úrovně Premium. Skript se nejprve připojí k vašemu účtu Azure, načte zásady, transformuje nebo přidá různé parametry a pak nahraje novou zásadu Premium. Nová zásada Premium má název <previous_policy_name>_premium
. Pokud se jedná o transformaci podřízené zásady, zůstane odkaz na nadřazenou zásadu.
Příklad použití:
Transform-Policy -PolicyId /subscriptions/XXXXX-XXXXXX-XXXXX/resourceGroups/some-resource-group/providers/Microsoft.Network/firewallPolicies/policy-name
Důležité
Skript nemigruje nastavení analýzy hrozeb a privátních rozsahů SNAT. Než budete pokračovat, musíte si tato nastavení poznamenat a migrovat je ručně. V opačném případě může dojít k nesouvislému filtrování provozu s vaším upgradovaným firewallem.
Tento skript vyžaduje nejnovější Azure PowerShell. Spuštěním Get-Module -ListAvailable Az
zjistíte, které verze jsou nainstalované. Pokud potřebujete nainstalovat, přečtěte si téma Instalace modulu Azure PowerShellu.
<#
.SYNOPSIS
Given an Azure firewall policy id the script will transform it to a Premium Azure firewall policy.
The script will first pull the policy, transform/add various parameters and then upload a new premium policy.
The created policy will be named <previous_policy_name>_premium if no new name provided else new policy will be named as the parameter passed.
.Example
Transform-Policy -PolicyId /subscriptions/XXXXX-XXXXXX-XXXXX/resourceGroups/some-resource-group/providers/Microsoft.Network/firewallPolicies/policy-name -NewPolicyName <optional param for the new policy name>
#>
param (
#Resource id of the azure firewall policy.
[Parameter(Mandatory=$true)]
[string]
$PolicyId,
#new filewallpolicy name, if not specified will be the previous name with the '_premium' suffix
[Parameter(Mandatory=$false)]
[string]
$NewPolicyName = ""
)
$ErrorActionPreference = "Stop"
$script:PolicyId = $PolicyId
$script:PolicyName = $NewPolicyName
function ValidatePolicy {
[CmdletBinding()]
param (
[Parameter(Mandatory=$true)]
[Object]
$Policy
)
Write-Host "Validating resource is as expected"
if ($null -eq $Policy) {
Write-Error "Received null policy"
exit(1)
}
if ($Policy.GetType().Name -ne "PSAzureFirewallPolicy") {
Write-Error "Resource must be of type Microsoft.Network/firewallPolicies"
exit(1)
}
if ($Policy.Sku.Tier -eq "Premium") {
Write-Host "Policy is already premium" -ForegroundColor Green
exit(1)
}
}
function GetPolicyNewName {
[CmdletBinding()]
param (
[Parameter(Mandatory=$true)]
[Microsoft.Azure.Commands.Network.Models.PSAzureFirewallPolicy]
$Policy
)
if (-not [string]::IsNullOrEmpty($script:PolicyName)) {
return $script:PolicyName
}
return $Policy.Name + "_premium"
}
function TransformPolicyToPremium {
[CmdletBinding()]
param (
[Parameter(Mandatory=$true)]
[Microsoft.Azure.Commands.Network.Models.PSAzureFirewallPolicy]
$Policy
)
$NewPolicyParameters = @{
Name = (GetPolicyNewName -Policy $Policy)
ResourceGroupName = $Policy.ResourceGroupName
Location = $Policy.Location
BasePolicy = $Policy.BasePolicy.Id
ThreatIntelMode = $Policy.ThreatIntelMode
ThreatIntelWhitelist = $Policy.ThreatIntelWhitelist
PrivateRange = $Policy.PrivateRange
DnsSetting = $Policy.DnsSettings
SqlSetting = $Policy.SqlSetting
ExplicitProxy = $Policy.ExplicitProxy
DefaultProfile = $Policy.DefaultProfile
Tag = $Policy.Tag
SkuTier = "Premium"
}
Write-Host "Creating new policy"
$premiumPolicy = New-AzFirewallPolicy @NewPolicyParameters
Write-Host "Populating rules in new policy"
foreach ($ruleCollectionGroup in $Policy.RuleCollectionGroups) {
$ruleResource = Get-AzResource -ResourceId $ruleCollectionGroup.Id
$ruleToTransform = Get-AzFirewallPolicyRuleCollectionGroup -AzureFirewallPolicy $Policy -Name $ruleResource.Name
$ruleCollectionGroup = @{
FirewallPolicyObject = $premiumPolicy
Priority = $ruleToTransform.Properties.Priority
Name = $ruleToTransform.Name
}
if ($ruleToTransform.Properties.RuleCollection.Count) {
$ruleCollectionGroup["RuleCollection"] = $ruleToTransform.Properties.RuleCollection
}
Set-AzFirewallPolicyRuleCollectionGroup @ruleCollectionGroup
}
}
function ValidateAzNetworkModuleExists {
Write-Host "Validating needed module exists"
$networkModule = Get-InstalledModule -Name "Az.Network" -MinimumVersion 4.5 -ErrorAction SilentlyContinue
if ($null -eq $networkModule) {
Write-Host "Please install Az.Network module version 4.5.0 or higher, see instructions: https://github.com/Azure/azure-powershell#installation"
exit(1)
}
$resourceModule = Get-InstalledModule -Name "Az.Resources" -MinimumVersion 4.2 -ErrorAction SilentlyContinue
if ($null -eq $resourceModule) {
Write-Host "Please install Az.Resources module version 4.2.0 or higher, see instructions: https://github.com/Azure/azure-powershell#installation"
exit(1)
}
Import-Module Az.Network -MinimumVersion 4.5.0
Import-Module Az.Resources -MinimumVersion 4.2.0
}
ValidateAzNetworkModuleExists
$policy = Get-AzFirewallPolicy -ResourceId $script:PolicyId
ValidatePolicy -Policy $policy
TransformPolicyToPremium -Policy $policy
Migrace služby Azure Firewall pomocí zastavení/spuštění
Pokud používáte skladovou položku Azure Firewall Standard se zásadami brány firewall, můžete pomocí metody Přidělení nebo zrušení přidělení migrovat skladovou položku brány firewall na úroveň Premium. Tento přístup k migraci je podporován jak na bránách firewall VNet Hub, tak na bránách firewall Secure Hub. Při migraci nasazení Secure Hubu se zachová veřejná IP adresa brány firewall.
Minimální požadavek na verzi Azure PowerShellu je 6.5.0. Další informace najdete v tématu Az 6.5.0.
Migrace brány firewall pro hub virtuální sítě
Zrušení přidělení standardního firewallu
$azfw = Get-AzFirewall -Name "<firewall-name>" -ResourceGroupName "<resource-group-name>" $azfw.Deallocate() Set-AzFirewall -AzureFirewall $azfw
Přidělte Premium firewall (jednu veřejnou IP adresu)
$azfw = Get-AzFirewall -Name "<firewall-name>" -ResourceGroupName "<resource-group-name>" $azfw.Sku.Tier="Premium" $vnet = Get-AzVirtualNetwork -ResourceGroupName "<resource-group-name>" -Name "<Virtual-Network-Name>" $publicip = Get-AzPublicIpAddress -Name "<Firewall-PublicIP-name>" -ResourceGroupName "<resource-group-name>" $azfw.Allocate($vnet,$publicip) Set-AzFirewall -AzureFirewall $azfw
Přidělte firewally Premium (více veřejných IP adres)
$azfw = Get-AzFirewall -Name "FW Name" -ResourceGroupName "RG Name" $azfw.Sku.Tier="Premium" $vnet = Get-AzVirtualNetwork -ResourceGroupName "RG Name" -Name "VNet Name" $publicip1 = Get-AzPublicIpAddress -Name "Public IP1 Name" -ResourceGroupName "RG Name" $publicip2 = Get-AzPublicIpAddress -Name "Public IP2 Name" -ResourceGroupName "RG Name" $azfw.Allocate($vnet,@($publicip1,$publicip2)) Set-AzFirewall -AzureFirewall $azfw
Přidělení brány firewall Premium v režimu vynucených tunelů
$azfw = Get-AzFirewall -Name "<firewall-name>" -ResourceGroupName "<resource-group-name>" $azfw.Sku.Tier="Premium" $vnet = Get-AzVirtualNetwork -ResourceGroupName "<resource-group-name>" -Name "<Virtual-Network-Name>" $publicip = Get-AzPublicIpAddress -Name "<Firewall-PublicIP-name>" -ResourceGroupName "<resource-group-name>" $mgmtPip = Get-AzPublicIpAddress -ResourceGroupName "<resource-group-name>"-Name "<Management-PublicIP-name>" $azfw.Allocate($vnet,$publicip,$mgmtPip) Set-AzFirewall -AzureFirewall $azfw
Migrace brány firewall zabezpečeného centra
Dealokace standardní brány firewall
$azfw = Get-AzFirewall -Name "<firewall-name>" -ResourceGroupName "<resource-group-name>" $azfw.Deallocate() Set-AzFirewall -AzureFirewall $azfw
Přidělení brány firewall Premium
$azfw = Get-AzFirewall -Name "<firewall-name>" -ResourceGroupName "<resource-group-name>" $hub = get-azvirtualhub -ResourceGroupName "<resource-group-name>" -name "<vWANhub-name>" $azfw.Sku.Tier="Premium" $azfw.Allocate($hub.id) Set-AzFirewall -AzureFirewall $azfw
Připojte zásady Premium k prémiové bráně Firewall.
K nové bráně Firewall úrovně Premium můžete připojit zásadu Premium pomocí webu Azure Portal: