Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Możesz przeprowadzić migrację usługi Azure Firewall w warstwie Standardowa do usługi Azure Firewall Premium, aby skorzystać z nowych funkcji Premium. Aby uzyskać więcej informacji na temat funkcji usługi Azure Firewall w wersji Premium, zobacz Funkcje usługi Azure Firewall w wersji Premium.
Ten artykuł zawiera instrukcje wymagane do ręcznej migracji zapory ogniowej Standard i zasad do Premium.
Napiwek
Najprostszym sposobem zmiany jednostki SKU usługi Azure Firewall bez przestoju jest użycie funkcji Zmień jednostkę SKU . Aby uzyskać więcej informacji, zobacz Azure Firewall easy upgrade/downgrade (Łatwe uaktualnianie/obniżanie poziomu usługi Azure Firewall).
Przed rozpoczęciem migracji zapoznaj się z kwestiami wydajności i zaplanuj z wyprzedzeniem okno konserwacyjne. Oczekiwany jest typowy czas przestoju 20–30 minut.
Następujące ogólne kroki są wymagane do pomyślnej migracji:
- Utwórz nowe zasady Premium na podstawie istniejących zasad standardowych lub reguł klasycznych. Po zakończeniu tego kroku nowa polisa Premium będzie zawierać wszystkie Twoje istniejące reguły i ustawienia polityki.
- Migrowanie usługi Azure Firewall z warstwy Standardowa do warstwy Premium przy użyciu zatrzymywania/uruchamiania.
- Przypisz nowo utworzoną polisę Premium do swojej zapory Premium.
Ważne
Uaktualnianie standardowej zapory wdrożonej w Azji Południowo-Wschodniej ze strefami dostępności nie jest obecnie obsługiwane.
Jeśli używasz narzędzia Terraform do wdrażania usługi Azure Firewall, możesz użyć narzędzia Terraform do migracji do usługi Azure Firewall Premium. Aby uzyskać więcej informacji, zobacz Migrowanie usługi Azure Firewall w warstwie Standardowa do warstwy Premium przy użyciu narzędzia Terraform.
Zagadnienia dotyczące wydajności
Wydajność jest brana pod uwagę podczas migracji ze standardowej jednostki SKU. Inspekcja idPS i TLS to operacje intensywnie korzystające z obliczeń. Jednostka SKU w warstwie Premium używa bardziej wydajnej jednostki SKU maszyny wirtualnej, która jest skalowana do wyższej przepływności porównywalnej ze standardową jednostkę SKU. Aby uzyskać więcej informacji na temat wydajności usługi Azure Firewall, zobacz Wydajność usługi Azure Firewall
Firma Microsoft zaleca klientom przeprowadzanie testów na pełną skalę we wdrożeniu platformy Azure w celu zapewnienia, że wydajność usługi zapory spełnia Twoje oczekiwania.
Przestój
Przeprowadź migrację zapory podczas zaplanowanego czasu konserwacji, ponieważ podczas migrowania usługi Azure Firewall z warstwy Standardowa do warstwy Premium nastąpi przerwa przy użyciu zatrzymania/uruchomienia.
Migrowanie reguł klasycznych do zasad standardowych
Podczas procesu migracji może być konieczne przeprowadzenie migracji klasycznych reguł zapory do zasad standardowych. Możesz to zrobić za pomocą witryny Azure Portal:
W witrynie Azure Portal wybierz standardową zaporę. Na stronie Przegląd wybierz Migruj do zasad zapory sieciowej.
Na stronie Migracja do zasad zapory wybierz opcję Przejrzyj i utwórz.
Wybierz pozycję Utwórz.
Ukończenie wdrożenia trwa kilka minut.
Istniejące reguły klasyczne można również migrować z usługi Azure Firewall przy użyciu programu Azure PowerShell w celu utworzenia zasad. Aby uzyskać więcej informacji, zobacz Migrowanie konfiguracji usługi Azure Firewall do zasad usługi Azure Firewall przy użyciu programu PowerShell
Migrowanie istniejących zasad przy użyciu programu Azure PowerShell
Transform-Policy.ps1
to skrypt Azure PowerShell, który tworzy nową zasadę Premium na podstawie istniejącej zasady Standardowa.
Biorąc pod uwagę standardowy identyfikator polityki zapory, skrypt przekształca go w politykę zapory Azure Premium. Skrypt najpierw łączy się z Twoim kontem Azure, pobiera polisę, przekształca i dodaje różne parametry, a następnie przesyła nową polisę Premium. Nowa polisa premium nosi nazwę <previous_policy_name>_premium
. Jeśli jest to przekształcenie zasad podrzędnych, pozostanie link do zasad nadrzędnych.
Przykład użycia:
Transform-Policy -PolicyId /subscriptions/XXXXX-XXXXXX-XXXXX/resourceGroups/some-resource-group/providers/Microsoft.Network/firewallPolicies/policy-name
Ważne
Skrypt nie migruje ustawień analizy zagrożeń i prywatnych zakresów SNAT. Przed kontynuowaniem należy zanotować te ustawienia i przeprowadzić ich migrację ręcznie. W przeciwnym razie może wystąpić niespójne filtrowanie ruchu przy użyciu nowej uaktualnionej zapory.
Ten skrypt wymaga najnowszej wersji programu Azure PowerShell. Uruchom polecenie Get-Module -ListAvailable Az
, aby zobaczyć, które wersje są zainstalowane. Jeśli musisz zainstalować, zobacz Instalowanie modułu programu Azure PowerShell.
<#
.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
Migrowanie usługi Azure Firewall przy użyciu zatrzymywania/uruchamiania
Jeśli używasz Azure Firewall Standard SKU z polityką zapory, możesz użyć metody Allocate/Deallocate, aby przeprowadzić migrację SKU zapory do warstwy Premium. Takie podejście do migracji jest obsługiwane zarówno w zaporach sieciowych koncentratora sieci wirtualnej, jak i zaporach sieciowych Bezpiecznego Koncentratora. Podczas migracji wdrożenia usługi Secure Hub zachowany zostanie publiczny adres IP zapory.
Minimalne wymaganie dotyczące wersji programu Azure PowerShell to 6.5.0. Aby uzyskać więcej informacji, zobacz Az 6.5.0.
Migrowanie zapory koncentratora sieci wirtualnej
Zwolnij zaporę standardową
$azfw = Get-AzFirewall -Name "<firewall-name>" -ResourceGroupName "<resource-group-name>" $azfw.Deallocate() Set-AzFirewall -AzureFirewall $azfw
Przydziel zaporę sieciową Premium (pojedynczy publiczny adres IP)
$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
Przydziel Firewall Premium (przydzielanie wielu publicznych adresów IP)
$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
Przydzielanie zapory Premium w trybie wymuszonego tunelu
$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
Migrowanie zapory Secure Hub
Cofanie przydziału zapory standardowej
$azfw = Get-AzFirewall -Name "<firewall-name>" -ResourceGroupName "<resource-group-name>" $azfw.Deallocate() Set-AzFirewall -AzureFirewall $azfw
Przydziel zaporę 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
Dołącz zasady Premium do zapory Premium
Zasady Premium można dołączyć do nowej zapory Premium za pomocą portalu Azure.