Compartilhar via


Alterar o SKU do Firewall do Azure

Este artigo mostra como alterar a SKU do Firewall do Azure entre Standard e Premium. Você pode atualizar do Standard para o Premium para aproveitar os recursos de segurança aprimorados ou fazer downgrade do Premium para o Standard quando esses recursos não forem mais necessários. O Firewall do Azure Premium fornece recursos avançados de proteção contra ameaças, incluindo IDPS, inspeção de TLS e filtragem de URL.

Você pode alterar sua SKU de firewall usando um dos dois métodos:

  • Método fácil de mudança de SKU (recomendado): atualização ou downgrade sem tempo de inatividade usando o portal do Azure, PowerShell ou Terraform
  • Método de migração manual: migração passo a passo para cenários complexos ou quando uma alteração fácil de SKU não está disponível

Para obter mais informações sobre os recursos do Firewall do Azure Premium, consulte os recursos premium do Firewall do Azure.

Pré-requisitos

Antes de começar, verifique se você tem:

  • Uma assinatura do Azure com uma implantação existente do Firewall do Azure
  • Permissões apropriadas para modificar recursos de firewall (função colaborador de rede ou superior)
  • Módulo do Azure PowerShell versão 6.5.0 ou posterior (para métodos do PowerShell)
  • Uma janela de manutenção planejada (para o método de migração manual)

Importante

Este artigo se aplica somente a SKUs Standard e Premium do Firewall do Azure. O SKU Básico do Firewall do Azure não dá suporte a alterações de SKU e deve ser migrado primeiro para o SKU Standard antes de qualquer atualização para o Premium. Sempre execute operações de alteração de SKU durante os tempos de manutenção agendados e teste o processo minuciosamente em um ambiente de não produção primeiro.

A maneira mais fácil de alterar sua SKU do Firewall do Azure com tempo de inatividade zero é usar o recurso Alterar SKU . Esse método dá suporte à atualização do Standard para o Premium e ao downgrade do Premium para o Standard.

Quando usar uma alteração de SKU simplificada

Use o método de alteração de SKU fácil quando:

  • Você tem um Firewall do Azure com política de firewall (não regras clássicas)
  • Seu firewall é implantado em uma região com suporte
  • Você deseja minimizar o tempo de inatividade (tempo de inatividade zero com esse método)
  • Você tem uma implantação padrão sem configurações personalizadas complexas
  • Para downgrade: sua política Premium não utiliza recursos exclusivos da versão Premium que sejam incompatíveis com a versão Standard

Considerações de política para alterações de SKU

Atualizar para Premium

Durante o processo de atualização, escolha como lidar com sua política de firewall:

  • Política Premium existente: selecione uma política Premium pré-existente para anexar ao firewall atualizado
  • Política padrão existente: use sua política padrão atual. O sistema duplica e atualiza-o automaticamente para uma política Premium
  • Criar uma nova política Premium: permitir que o sistema crie uma nova política Premium com base na configuração atual

Rebaixar para Padrão

Ao fazer downgrade do Premium para o Standard, considere os seguintes requisitos de política:

Importante

Os recursos exclusivos Premium devem ser removidos ou desabilitados antes do downgrade para o SKU Standard.

Recursos Premium a serem considerados antes do downgrade:

  • Inspeção do TLS: desabilitar regras de inspeção do TLS e remover certificados associados
  • IDPS (Detecção e Prevenção de Intrusões): alterar o modo IDPS de Alerta e Negar para Somente Alerta ou Desativado
  • Filtragem de URL: substituir regras de filtragem de URL pela filtragem de FQDN sempre que possível
  • Categorias da Web: remover ou substituir regras de categoria da Web por regras específicas do FQDN

Opções de gerenciamento de políticas:

  • Usar a política Padrão existente: selecione uma política Standard preexistente que não contenha recursos Premium
  • Criar uma nova política Standard: o sistema pode criar uma nova política Standard, removendo automaticamente recursos específicos do Premium
  • Modificar a política atual: remova manualmente os recursos Premium da política atual antes do downgrade

Alterar a SKU usando o portal do Azure

Para alterar sua SKU de firewall usando o portal do Azure:

Atualizar para Premium

  1. Entre no portal do Azure.
  2. Navegue até o recurso do Firewall do Azure.
  3. Na página Visão geral , selecione Alterar SKU.
  4. Na caixa de diálogo de alteração de SKU, selecione Premium como o SKU de destino.
  5. Escolha sua opção de política:
    • Selecione uma política Premium existente ou
    • Permitir que o sistema atualize sua política Standard atual para Premium
  6. Selecione Salvar para iniciar a atualização.

Rebaixar para Padrão

  1. Entre no portal do Azure.
  2. Navegue até o recurso Azure Firewall Premium.
  3. Antes do downgrade: verifique se a política de firewall não contém recursos exclusivos premium (inspeção do TLS, modo de alerta e negação do IDPS, filtragem de URL, categorias da Web).
  4. Na página Visão geral , selecione Alterar SKU.
  5. Na caixa de diálogo de alteração de SKU, selecione Padrão como o SKU de destino.
  6. Escolha sua opção de política:
    • Selecione uma política Padrão existente ou
    • Permitir que o sistema crie uma nova política Standard (os recursos Premium são removidos automaticamente)
  7. Selecione Salvar para iniciar o downgrade.

O processo de alteração de SKU normalmente é concluído em poucos minutos sem tempo de inatividade.

Captura de tela mostrando a atualização do SKU.

Alteração do SKU do PowerShell e do Terraform

Você também pode executar alterações de SKU usando:

  • PowerShell: alterar a sku_tier propriedade para "Premium" ou "Standard"
  • Terraform: Atualize o atributo sku_tier na configuração para o SKU desejado

Limitações

O método de alteração de SKU fácil tem as seguintes limitações:

Limitações gerais:

  • Não dá suporte ao SKU Básico do Firewall do Azure – usuários do SKU Básico devem migrar primeiro para o Standard
  • Não disponível para firewalls com determinadas configurações complexas
  • Disponibilidade limitada em algumas regiões
  • Requer a política de firewall existente (não disponível para regras clássicas)

Limitações específicas de downgrade:

  • Os recursos Premium (inspeção do TLS, modo de alerta e negação do IDPS, filtragem de URL, categorias da Web) devem ser removidos antes do downgrade
  • Se sua política Premium contiver recursos incompatíveis, você deverá modificar a política ou criar uma nova política Standard
  • Algumas configurações de regra podem precisar de ajuste manual após o downgrade

Se o método de alteração de SKU fácil não estiver disponível para seu cenário, use o método de migração manual descrito na próxima seção.

Método de migração manual

Se o método de atualização fácil não estiver disponível ou adequado para sua implantação, você poderá usar o método de migração manual. Essa abordagem fornece mais controle, mas requer tempo de inatividade.

Quando usar a migração manual

Use a migração manual quando:

  • A atualização fácil não está disponível para seu cenário
  • Você tem regras de firewall clássicas que precisam de migração
  • Você tem configurações personalizadas complexas
  • Você precisa de controle total sobre o processo de migração
  • Seu firewall é implantado no Sudeste Asiático com Zonas de Disponibilidade

Considerações sobre desempenho

O desempenho é uma consideração ao migrar do SKU Standard. A inspeção de IDPS e TLS são operações intensivas de computação. O SKU Premium usa um SKU de VM mais poderoso, que é dimensionado para uma taxa de transferência mais alta comparável com o SKU Standard. Para obter mais informações sobre o desempenho do Firewall do Azure, consulte o desempenho do Firewall do Azure.

A Microsoft recomenda que os clientes realizem testes em grande escala em sua implantação do Azure para garantir que o desempenho do serviço de firewall atenda às suas expectativas.

Considerações sobre tempo de inatividade

Planeje uma janela de manutenção ao usar o método de migração manual, pois há algum tempo de inatividade (normalmente de 20 a 30 minutos) durante o processo de parada/início.

Visão geral das etapas de migração

As seguintes etapas gerais são necessárias para uma migração manual bem-sucedida:

  1. Criar uma nova política Premium com base em sua política Standard ou regras clássicas existentes
  2. Migrar o Firewall do Azure do Standard para o Premium usando stop/start
  3. Anexar a política Premium ao Firewall Premium

Etapa 1: Migrar regras clássicas para a política Standard

Se você tiver regras de firewall clássicas, primeiro migre-as para uma política Standard usando o portal do Azure:

  1. No portal do Azure, selecione o firewall padrão.
  2. Na página Visão geral , selecione Migrar para a política de firewall.
  3. Na página Migrar para a política de firewall, selecioneExaminar + criar.
  4. Selecione Criar.

A implantação leva alguns minutos para ser concluída.

Você também pode migrar regras clássicas existentes usando o Azure PowerShell. Para obter mais informações, consulte Migrar configurações do Firewall do Azure para a política de Firewall do Azure usando o PowerShell.

Etapa 2: Criar uma política Premium usando o PowerShell

Use o seguinte script do PowerShell para criar uma nova política Premium de uma política Standard existente:

Importante

O script não migra as configurações de intervalos privados de Inteligência contra Ameaças e SNAT. Você precisa observar essas configurações antes de continuar e migrá-las manualmente.

<#
    .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

Exemplo de uso:

Transform-Policy -PolicyId /subscriptions/XXXXX-XXXXXX-XXXXX/resourceGroups/some-resource-group/providers/Microsoft.Network/firewallPolicies/policy-name

Etapa 3: Migrar o Firewall do Azure usando stop/start

Se você usar o SKU Padrão do Firewall do Azure com a política de firewall, poderá usar o método Allocate/Deallocate para migrar sua SKU de Firewall para Premium. Essa abordagem de migração é compatível com o Hub de rede virtual e firewalls do Hub Seguro.

Observação

O requisito mínimo de versão do Azure PowerShell é 6.5.0. Para obter mais informações, consulte o Az 6.5.0.

Migrar um Firewall do Hub de rede virtual

Desalocar o Firewall Padrão

$azfw = Get-AzFirewall -Name "<firewall-name>" -ResourceGroupName "<resource-group-name>"
$azfw.Deallocate()
Set-AzFirewall -AzureFirewall $azfw

Alocar Firewall Premium (um único endereço IP público):

$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

Alocar Firewall Premium (vários endereços IP públicos):

$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

Alocar o firewall Premium no modo de Tunnel forçado:

$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

Migrar um Firewall do Hub Seguro

Desalocar o Firewall Padrão

$azfw = Get-AzFirewall -Name "<firewall-name>" -ResourceGroupName "<resource-group-name>"
$azfw.Deallocate()
Set-AzFirewall -AzureFirewall $azfw

Alocar 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

Etapa 4: Anexar política Premium

Depois de atualizar o firewall para Premium, anexe a política Premium usando o portal do Azure:

  1. Navegue até o firewall Premium no portal do Azure.
  2. Na página Visão geral , selecione Política de firewall.
  3. Selecione sua política Premium recém-criada.
  4. Clique em Salvar.

Captura de tela mostrando a política de firewall

Migração do Terraform

Se você usar o Terraform para implantar o Firewall do Azure, poderá usar o Terraform para migrar para o Firewall do Azure Premium. Para obter mais informações, consulte Migrar o Firewall do Azure Standard para Premium usando o Terraform.

Solucionar problemas de alteração de SKU

Problemas comuns e soluções

  • Alteração de SKU fácil não disponível: use o método de migração manual descrito neste artigo
  • Erros de migração de política: verifique se você tem as versões corretas do módulo do PowerShell instaladas
  • Tempo de inatividade maior do que o esperado: verificar a conectividade de rede e a disponibilidade de recursos
  • Problemas de desempenho após a atualização: revise as considerações de desempenho e realize testes completos
  • Downgrade bloqueado por recursos Premium: Remover ou desabilitar recursos exclusivos do Premium antes de tentar o downgrade.

Solucionar problemas de downgrade

Se você não conseguir fazer downgrade do Premium para o Standard:

  1. Verifique se há recursos Premium: verifique se a política de firewall não contém:

    • Regras de inspeção do TLS
    • IDPS no modo de alerta e negação
    • Regras de filtragem de URL
    • Regras de categoria da Web
  2. Opções de modificação de política:

    • Criar uma nova política Standard sem recursos Premium
    • Altere sua política atual para remover recursos Premium
    • Usar o Azure PowerShell para identificar e remover regras incompatíveis
  3. Etapas de validação:

    # Check current firewall policy for Premium features
    $policy = Get-AzFirewallPolicy -ResourceGroupName "myResourceGroup" -Name "myPolicy"
    
    # Review policy settings for Premium features
    $policy.ThreatIntelMode
    $policy.IntrusionDetection
    $policy.TransportSecurity
    

Limitações conhecidas

  • Atualmente, não há suporte para a atualização de um firewall Standard implantado no Sudeste Asiático com Zonas de Disponibilidade para migração manual
  • A alteração fácil de SKU não dá suporte a firewalls básicos de SKU, os usuários com SKU Básica devem primeiro migrar para o SKU Standard antes de atualizar para o Premium
  • Algumas configurações personalizadas podem exigir a abordagem de migração manual
  • O downgrade com recursos Premium ativos falha até que esses recursos sejam removidos

Próximas etapas