Compartilhar via


Tutorial: Proteger seu hub virtual usando o Azure PowerShell

Neste tutorial, você criará uma instância da WAN Virtual com um Hub Virtual em uma região e implantará um Firewall do Azure no Hub Virtual para proteger a conectividade. Neste exemplo, você demonstra a conectividade segura entre Redes Virtuais. O tráfego entre redes virtuais e branches site a site, ponto a site ou do ExpressRoute também tem suporte do hub seguro virtual.

Neste tutorial, você aprenderá como:

  • Implantar a WAN Virtual
  • Implantar o Firewall do Azure e configurar o roteamento personalizado
  • Testar a conectividade

Important

Uma WAN Virtual é uma coleção de hubs e serviços disponibilizados dentro do Hub. Você pode implantar a quantidade necessária de WANs. Em um hub de WAN Virtual, há vários serviços como VPN, ExpressRoute e assim por diante. Cada um desses serviços é implantado automaticamente entre zonas de disponibilidade, exceto o Firewall do Azure, se a região der suporte a zonas de disponibilidade. Para atualizar um Hub WAN Virtual do Azure existente para um Hub Seguro e fazer com que o Firewall do Azure use zonas de disponibilidade, você deve usar o Azure PowerShell, conforme descrito mais adiante nesse artigo.

Prerequisites

  • Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.

  • PowerShell 7 ou superior

    Este tutorial exige que você execute o Azure PowerShell localmente no PowerShell 7 ou superior. Para instalar o PowerShell 7, confira Como migrar do Windows PowerShell 5.1 para o PowerShell 7.

  • A versão do módulo "Az.Network" deve ser 4.17.0 ou superior.

Entrar no Azure

Connect-AzAccount
Select-AzSubscription -Subscription "<sub name>"

Implantação inicial da WAN Virtual

Para começar, você precisa definir variáveis e criar o grupo de recursos, a instância de WAN virtual e o hub virtual:

# Variable definition
$RG = "vwan-rg"
$Location = "westeurope"
$VwanName = "vwan"
$HubName =  "hub1"
$FirewallTier = "Standard" # or "Premium"

# Create Resource Group, Virtual WAN and Virtual Hub using the New-AzVirtualWan and New-AzVirtualHub cmdlets
New-AzResourceGroup -Name $RG -Location $Location
$Vwan = New-AzVirtualWan -Name $VwanName -ResourceGroupName $RG -Location $Location -AllowVnetToVnetTraffic -AllowBranchToBranchTraffic -VirtualWANType "Standard"
$Hub = New-AzVirtualHub -Name $HubName -ResourceGroupName $RG -VirtualWan $Vwan -Location $Location -AddressPrefix "192.168.1.0/24" -Sku "Standard"
  • Crie duas redes virtuais e conecte-as ao hub como spokes usando o New-AzVirtualHubVnetConnection cmdlet. As redes virtuais são criadas com os prefixos 10.1.1.0/24 de endereço e 10.1.2.0/24.
# Create Virtual Network
$Spoke1 = New-AzVirtualNetwork -Name "spoke1" -ResourceGroupName $RG -Location $Location -AddressPrefix "10.1.1.0/24"
$Spoke2 = New-AzVirtualNetwork -Name "spoke2" -ResourceGroupName $RG -Location $Location -AddressPrefix "10.1.2.0/24"
# Connect Virtual Network to Virtual WAN
$Spoke1Connection = New-AzVirtualHubVnetConnection -ResourceGroupName $RG -ParentResourceName  $HubName -Name "spoke1" -RemoteVirtualNetwork $Spoke1 -EnableInternetSecurityFlag $True
$Spoke2Connection = New-AzVirtualHubVnetConnection -ResourceGroupName $RG -ParentResourceName  $HubName -Name "spoke2" -RemoteVirtualNetwork $Spoke2 -EnableInternetSecurityFlag $True

Nesta fase, sua WAN Virtual está totalmente operacional e oferece conectividade de qualquer para qualquer. Para proteger esse ambiente, implante um Firewall do Azure em cada Hub Virtual. Você pode gerenciar centralmente esses firewalls usando políticas de firewall.

Neste exemplo, você também criará uma política de firewall para gerenciar a instância do Firewall do Azure no hub de WAN Virtual usando o New-AzFirewallPolicy cmdlet. O Firewall do Azure será implantado no hub usando o New-AzFirewall cmdlet.

# New Firewall Policy
$FWPolicy = New-AzFirewallPolicy -Name "VwanFwPolicy" -ResourceGroupName $RG -Location $Location
# New Firewall Public IP
$AzFWPIPs = New-AzFirewallHubPublicIpAddress -Count 1
$AzFWHubIPs = New-AzFirewallHubIpAddress -PublicIP $AzFWPIPs
# New Firewall
$AzFW = New-AzFirewall -Name "azfw1" -ResourceGroupName $RG -Location $Location `
            -VirtualHubId $Hub.Id -FirewallPolicyId $FWPolicy.Id `
            -SkuName "AZFW_Hub" -HubIPAddress $AzFWHubIPs `
            -SkuTier $FirewallTier

Note

O comando de criação do Firewall a seguir não usa zonas de disponibilidade. Se você quiser usar esse recurso, um parâmetro adicional -Zone será necessário. Um exemplo é fornecido na seção de atualização no final deste artigo.

Habilitar o registro em log do Firewall do Azure no Azure Monitor é opcional. Neste exemplo, você usa logs de firewall para verificar se o tráfego está passando pelo firewall. Primeiro, crie um workspace do Log Analytics para armazenar os logs. Em seguida, use o cmdlet Set-AzDiagnosticSetting para definir as configurações de diagnóstico e enviar os logs para o espaço de trabalho.

# Optionally, enable logging of Azure Firewall to Azure Monitor
$LogWSName = "vwan-" + (Get-Random -Maximum 99999) + "-" + $RG
$LogWS = New-AzOperationalInsightsWorkspace -Location $Location -Name $LogWSName -Sku Standard -ResourceGroupName $RG
Set-AzDiagnosticSetting -ResourceId $AzFW.Id -Enabled $True -Category AzureFirewallApplicationRule, AzureFirewallNetworkRule -WorkspaceId $LogWS.ResourceId

Implantar o Firewall do Azure e configurar o roteamento personalizado

Note

Essa é a configuração implantada ao proteger a conectividade do Portal do Azure com o Gerenciador de Firewall do Azure quando a configuração "Inter-hub" é definida como desabilitada. Para obter instruções sobre como configurar o roteamento usando o PowerShell quando "Inter-hub" estiver definido como habilitado, consulte Habilitar a intenção de roteamento.

Agora que você tem um Firewall do Azure no hub, mas ainda precisa modificar o roteamento para que a WAN Virtual envie o tráfego das redes virtuais e dos branches por meio do firewall. Faça isso em duas etapas:

  1. Configure todas as conexões de rede virtual (e as conexões de branch, se houver alguma) para fazer a propagação para a Tabela de Rotas None. O efeito dessa configuração é que outras redes virtuais e branches não aprenderão os prefixos deles e, portanto, ela não tem roteamento para acessá-los.
  2. Agora, você pode inserir rotas estáticas na Tabela de Rotas Default (em que todas as redes virtuais e branches estão associados por padrão), para que todo o tráfego seja enviado para o Firewall do Azure.

Comece configurando suas conexões de rede virtual para propagar para a Tabela de Rotas None. Esta etapa garante que as redes virtuais não aprendam os prefixos de endereço uns dos outros, impedindo a comunicação direta entre elas. Como resultado, todo o tráfego de rede entre virtuais deve passar pelo Firewall do Azure.

Para fazer isso, use o Get-AzVhubRouteTable cmdlet para recuperar a None Tabela de Rotas e atualize a configuração de roteamento de cada conexão de rede virtual com o Update-AzVirtualHubVnetConnection cmdlet.

# Configure Virtual Network connections in hub to propagate to None
$VnetRoutingConfig = $Spoke1Connection.RoutingConfiguration    # We take $Spoke1Connection as baseline for the future vnet config, all vnets will have an identical config
$NoneRT = Get-AzVhubRouteTable -ResourceGroupName $RG -HubName $HubName -Name "noneRouteTable"
$NewPropRT = @{}
$NewPropRT.Add('Id', $NoneRT.Id)
$PropRTList = @()
$PropRTList += $NewPropRT
$VnetRoutingConfig.PropagatedRouteTables.Ids = $PropRTList
$VnetRoutingConfig.PropagatedRouteTables.Labels = @()
$Spoke1Connection = Update-AzVirtualHubVnetConnection -ResourceGroupName $RG -ParentResourceName  $HubName -Name "spoke1" -RoutingConfiguration $VnetRoutingConfig
$Spoke2Connection = Update-AzVirtualHubVnetConnection -ResourceGroupName $RG -ParentResourceName  $HubName -Name "spoke2" -RoutingConfiguration $VnetRoutingConfig

Em seguida, prossiga para a segunda etapa: adicionar rotas estáticas à tabela de rotas Default. O exemplo a seguir usa a configuração padrão que o Gerenciador de Firewall do Azure aplica ao proteger a conectividade em uma WAN Virtual. Você pode personalizar a lista de prefixos na rota estática conforme necessário usando o New-AzVHubRoute cmdlet. Neste exemplo, todo o tráfego é roteado por meio do Firewall do Azure, que é o padrão recomendado.

# Create static routes in default Route table
$AzFWId = $(Get-AzVirtualHub -ResourceGroupName $RG -name  $HubName).AzureFirewall.Id
$AzFWRoute = New-AzVHubRoute -Name "all_traffic" -Destination @("0.0.0.0/0", "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16") -DestinationType "CIDR" -NextHop $AzFWId -NextHopType "ResourceId"
$DefaultRT = Update-AzVHubRouteTable -Name "defaultRouteTable" -ResourceGroupName $RG -VirtualHubName  $HubName -Route @($AzFWRoute)

Note

A cadeia de caracteres "all_traffic" como valor para o parâmetro "-Name" no comando New-AzVHubRoute acima tem um significado especial: se você usar essa cadeia de caracteres exata, a configuração aplicada neste artigo será refletida corretamente no portal do Azure (Gerenciador de Firewall --> Hubs virtuais --> [Seu Hub] --> Configuração de Segurança). Se um nome diferente for usado, a configuração desejada será aplicada, mas não será refletida no portal do Azure.

Habilitação da intenção de roteamento

Se você quiser enviar tráfego inter-hub e inter-regional por meio de Firewall do Azure implantado no hub da WAN Virtual, você pode habilitar o recurso de intenção de roteamento. Para obter mais informações sobre a intenção de roteamento, consulte a Documentação da Intenção de Roteamento.

Note

Essa é a configuração implantada ao proteger a conectividade do portal do Azure com o Gerenciador de Firewall do Azure quando a configuração "Interhub" está definida como habilitada.

# Get the Azure Firewall resource ID
$AzFWId = $(Get-AzVirtualHub -ResourceGroupName <thname> -name  $HubName).AzureFirewall.Id

# Create routing policy and routing intent
$policy1 = New-AzRoutingPolicy -Name "PrivateTraffic" -Destination @("PrivateTraffic") -NextHop $firewall.Id
$policy2 = New-AzRoutingPolicy -Name "PublicTraffic" -Destination @("Internet") -NextHop $firewall.Id
New-AzRoutingIntent -ResourceGroupName "<rgname>" -VirtualHubName "<hubname>" -Name "hubRoutingIntent" -RoutingPolicy @($policy1, $policy2)
If your Virtual WAN uses non-RFC1918 address prefixes (for example, `40.0.0.0/24` in a virtual network or on-premises), you should add an extra route to the `defaultRouteTable` after completing the routing intent configuration. Name this route **private_traffic**. If you use a different name, the route will work as expected, but the configuration will not be reflected in the Azure portal.

```azurepowershell-interactive
# Get the defaultRouteTable
$defaultRouteTable = Get-AzVHubRouteTable -ResourceGroupName routingIntent-Demo -HubName wus_hub1 -Name defaultRouteTable

# Get the routes automatically created by routing intent. If private routing policy is enabled, this is the route named _policy_PrivateTraffic. If internet routing policy is enabled, this is the route named _policy_InternetTraffic. 
$privatepolicyroute = $defaultRouteTable.Routes[1]


# Create new route named private_traffic for non-RFC1918 prefixes
$private_traffic = New-AzVHubRoute -Name "private-traffic" -Destination @("30.0.0.0/24") -DestinationType "CIDR" -NextHop $AzFWId -NextHopType ResourceId

# Create new routes for route table
$newroutes = @($privatepolicyroute, $private_traffic)

# Update route table
Update-AzVHubRouteTable -ResourceGroupName <rgname> -ParentResourceName <hubname> -Name defaultRouteTable -Route $newroutes

Testar a conectividade

Agora que o hub seguro está totalmente operacional, você pode testar a conectividade implantando uma máquina virtual em cada rede virtual spoke conectada ao hub:

# Create VMs in spokes for testing
$VMLocalAdminUser = "lab-user"
$VMLocalAdminSecurePassword = ConvertTo-SecureString -AsPlainText -Force
$VMCredential = New-Object System.Management.Automation.PSCredential ($VMLocalAdminUser, $VMLocalAdminSecurePassword);
$VMSize = "Standard_B2ms"
# Spoke1
$Spoke1 = Get-AzVirtualNetwork -ResourceGroupName $RG -Name "spoke1"
Add-AzVirtualNetworkSubnetConfig -Name "vm" -VirtualNetwork $Spoke1 -AddressPrefix "10.1.1.0/26"
$Spoke1 | Set-AzVirtualNetwork
$VM1 = New-AzVM -Name "spoke1-vm" -ResourceGroupName $RG -Location $Location `
            -Image "UbuntuLTS" -credential $VMCredential `
            -VirtualNetworkName "spoke1" -SubnetName "vm" -PublicIpAddressName "spoke1-pip"
$NIC1 = Get-AzNetworkInterface -ResourceId $($VM1.NetworkProfile.NetworkInterfaces[0].Id)
$Spoke1VMPrivateIP = $NIC1.IpConfigurations[0].PrivateIpAddress
$Spoke1VMPIP = $(Get-AzPublicIpAddress -ResourceGroupName $RG -Name "spoke1-pip")
# Spoke2
$Spoke2 = Get-AzVirtualNetwork -ResourceGroupName $RG -Name "spoke2"
Add-AzVirtualNetworkSubnetConfig -Name "vm" -VirtualNetwork $Spoke2 -AddressPrefix "10.1.2.0/26"
$Spoke2 | Set-AzVirtualNetwork
$VM2 = New-AzVM -Name "spoke2-vm" -ResourceGroupName $RG -Location $Location `
            -Image "UbuntuLTS" -credential $VMCredential `
            -VirtualNetworkName "spoke2" -SubnetName "vm" -PublicIpAddressName "spoke2-pip"
$NIC2 = Get-AzNetworkInterface -ResourceId $($VM2.NetworkProfile.NetworkInterfaces[0].Id)
$Spoke2VMPrivateIP = $NIC2.IpConfigurations[0].PrivateIpAddress
$Spoke2VMPIP = $(Get-AzPublicIpAddress -ResourceGroupName $RG -Name "spoke2-pip")

Por padrão, a política de firewall bloqueia todo o tráfego. Para permitir o acesso às máquinas virtuais de teste, você deve configurar regras de DNAT (Conversão de Endereços de Rede de Destino). Essas regras permitirão que você se conecte às VMs por meio do endereço IP público do Firewall do Azure:

# Adding DNAT rules for virtual machines in the spokes
$AzFWPublicAddress = $AzFW.HubIPAddresses.PublicIPs.Addresses[0].Address
$NATRuleSpoke1 = New-AzFirewallPolicyNatRule -Name "Spoke1SSH" -Protocol "TCP" `
        -SourceAddress "*" -DestinationAddress $AzFWPublicAddress -DestinationPort 10001 `
        -TranslatedAddress $Spoke1VMPrivateIP -TranslatedPort 22
$NATRuleSpoke2 = New-AzFirewallPolicyNatRule -Name "Spoke2SSH" -Protocol "TCP" `
        -SourceAddress "*" -DestinationAddress $AzFWPublicAddress -DestinationPort 10002 `
        -TranslatedAddress $Spoke2VMPrivateIP -TranslatedPort 22
$NATCollection = New-AzFirewallPolicyNatRuleCollection -Name "SSH" -Priority 100 `
        -Rule @($NATRuleSpoke1, $NATRuleSpoke2) -ActionType "Dnat"
$NATGroup = New-AzFirewallPolicyRuleCollectionGroup -Name "NAT" -Priority 100 -RuleCollection $NATCollection -FirewallPolicyObject $FWPolicy

Em seguida, configure regras de exemplo para sua política de firewall. Primeiro, crie uma regra de rede para permitir o tráfego SSH entre as redes virtuais. Em seguida, adicione uma regra de aplicativo para permitir o acesso à Internet somente ao FQDN (Nome de Domínio Totalmente Qualificado), ifconfig.coque retorna o endereço IP de origem visto na solicitação HTTP:

# Add Network Rule
$SSHRule = New-AzFirewallPolicyNetworkRule -Name PermitSSH -Protocol TCP `
        -SourceAddress "10.0.0.0/8" -DestinationAddress "10.0.0.0/8" -DestinationPort 22
$NetCollection = New-AzFirewallPolicyFilterRuleCollection -Name "Management" -Priority 100 -ActionType Allow -Rule $SSHRule
$NetGroup = New-AzFirewallPolicyRuleCollectionGroup -Name "Management" -Priority 200 -RuleCollection $NetCollection -FirewallPolicyObject $FWPolicy
# Add Application Rule
$ifconfigRule = New-AzFirewallPolicyApplicationRule -Name PermitIfconfig -SourceAddress "10.0.0.0/8" -TargetFqdn "ifconfig.co" -Protocol "http:80","https:443"
$AppCollection = New-AzFirewallPolicyFilterRuleCollection -Name "TargetURLs" -Priority 300 -ActionType Allow -Rule $ifconfigRule
$NetGroup = New-AzFirewallPolicyRuleCollectionGroup -Name "TargetURLs" -Priority 300 -RuleCollection $AppCollection -FirewallPolicyObject $FWPolicy

Antes de enviar qualquer tráfego, verifique as rotas efetivas para cada máquina virtual. As tabelas de rotas devem mostrar os prefixos aprendidos da WAN Virtual (faixas 0.0.0.0/0 e RFC1918), mas não devem incluir o prefixo de endereço da outra rede virtual spoke.

# Check effective routes in the VM NIC in spoke 1
# Note that 10.1.2.0/24 (the prefix for spoke2) should not appear
Get-AzEffectiveRouteTable -ResourceGroupName $RG -NetworkInterfaceName $NIC1.Name | ft
# Check effective routes in the VM NIC in spoke 2
# Note that 10.1.1.0/24 (the prefix for spoke1) should not appear
Get-AzEffectiveRouteTable -ResourceGroupName $RG -NetworkInterfaceName $NIC2.Name | ft

Gere o tráfego de uma máquina virtual para a outra e verifique se ela é filtrada pelo Firewall do Azure. Use o SSH para se conectar às máquinas virtuais– aceite a impressão digital SSH e insira a senha definida durante a criação da VM. Neste exemplo, você irá:

  • Envie cinco solicitações de eco ICMP (pings) da VM no spoke1 para a VM no spoke2.
  • Tente uma conexão TCP na porta 22 usando o utilitário (netcat) nc com as opções -vz, que verifica a conectividade sem enviar dados.

Observe que as solicitações de ping falham (bloqueadas pelo firewall), enquanto a conexão TCP na porta 22 é bem-sucedida, conforme permitido pela regra de rede configurada anteriormente.

# Connect to one VM and ping the other. It should not work, because the firewall should drop the traffic, since no rule for ICMP is configured
ssh $AzFWPublicAddress -p 10001 -l $VMLocalAdminUser "ping $Spoke2VMPrivateIP -c 5"
# Connect to one VM and send a TCP request on port 22 to the other. It should work, because the firewall is configured to allow SSH traffic (port 22)
ssh $AzFWPublicAddress -p 10001 -l $VMLocalAdminUser "nc -vz $Spoke2VMPrivateIP 22"

Você também pode testar o acesso à Internet por meio do firewall. As solicitações HTTP que usam o curl utilitário para o FQDN permitido (ifconfig.co) devem ser bem-sucedidas, enquanto as solicitações para outros destinos (como bing.com) devem ser bloqueadas pela política de firewall:

# This HTTP request should succeed, since it is allowed in an app rule in the AzFW, and return the public IP of the FW
ssh $AzFWPublicAddress -p 10001 -l $VMLocalAdminUser "curl -s4 ifconfig.co"
# This HTTP request should fail, since the FQDN bing.com is not in any app rule in the firewall policy
ssh $AzFWPublicAddress -p 10001 -l $VMLocalAdminUser "curl -s4 bing.com"

Para confirmar se o firewall está descartando pacotes conforme o esperado, examine os logs enviados ao Azure Monitor. Como o Firewall do Azure está configurado para enviar logs de diagnóstico para o Azure Monitor, você pode usar a KQL (Linguagem de Consulta Kusto) para consultar e analisar as entradas de log relevantes:

Note

Pode levar cerca de 1 minuto para que os logs apareçam para serem enviados para o Azure Monitor

# Getting Azure Firewall network rule Logs
$LogWS = Get-AzOperationalInsightsWorkspace -ResourceGroupName $RG
$LogQuery = 'AzureDiagnostics
| where Category == "AzureFirewallNetworkRule"
| where TimeGenerated >= ago(5m)
| parse msg_s with Protocol " request from " SourceIP ":" SourcePortInt:int " to " TargetIP ":" TargetPortInt:int *
| parse msg_s with * ". Action: " Action1a
| parse msg_s with * " was " Action1b " to " NatDestination
| parse msg_s with Protocol2 " request from " SourceIP2 " to " TargetIP2 ". Action: " Action2
| extend SourcePort = tostring(SourcePortInt),TargetPort = tostring(TargetPortInt)
| extend Action = case(Action1a == "", case(Action1b == "",Action2,Action1b), Action1a),Protocol = case(Protocol == "", Protocol2, Protocol),SourceIP = case(SourceIP == "", SourceIP2, SourceIP),TargetIP = case(TargetIP == "", TargetIP2, TargetIP),SourcePort = case(SourcePort == "", "N/A", SourcePort),TargetPort = case(TargetPort == "", "N/A", TargetPort),NatDestination = case(NatDestination == "", "N/A", NatDestination)
| project TimeGenerated, Protocol, SourceIP,SourcePort,TargetIP,TargetPort,Action, NatDestination, Resource
| take 25 '
$(Invoke-AzOperationalInsightsQuery -Workspace $LogWS -Query $LogQuery).Results | ft

No comando anterior, você deve ver entradas diferentes:

  • O DNAT de sua conexão SSH está sendo feito
  • Pacotes ICMP descartados entre as VMs nos spokes (10.1.1.4 e 10.1.2.4)
  • Conexões SSH permitidas entre as VMs nos spokes

Veja um exemplo de saída produzido pelo comando acima:

TimeGenerated            Protocol    SourceIP       SourcePort TargetIP      TargetPort Action  NatDestination Resource
-------------            --------    --------       ---------- --------      ---------- ------  -------------- --------
2020-10-04T20:53:02.41Z  TCP         109.125.122.99 62281      51.105.224.44 10001      DNAT'ed 10.1.1.4:22    AZFW1
2020-10-04T20:53:07.045Z TCP         10.1.1.4       35932      10.1.2.4      22         Allow   N/A            AZFW1
2020-10-04T20:53:50.119Z TCP         109.125.122.99 62293      51.105.224.44 10001      DNAT'ed 10.1.2.4:22    AZFW1
2020-10-04T20:52:47.475Z TCP         109.125.122.99 62273      51.105.224.44 10001      DNAT'ed 10.1.2.4:22    AZFW1
2020-10-04T20:51:04.682Z TCP         109.125.122.99 62200      51.105.224.44 10001      DNAT'ed 10.1.2.4:22    AZFW1
2020-10-04T20:51:17.031Z ICMP Type=8 10.1.1.4       N/A        10.1.2.4      N/A        Deny    N/A            AZFW1
2020-10-04T20:51:18.049Z ICMP Type=8 10.1.1.4       N/A        10.1.2.4      N/A        Deny    N/A            AZFW1
2020-10-04T20:51:19.075Z ICMP Type=8 10.1.1.4       N/A        10.1.2.4      N/A        Deny    N/A            AZFW1
2020-10-04T20:51:20.097Z ICMP Type=8 10.1.1.4       N/A        10.1.2.4      N/A        Deny    N/A            AZFW1
2020-10-04T20:51:21.121Z ICMP Type=8 10.1.1.4       N/A        10.1.2.4      N/A        Deny    N/A            AZFW1
2020-10-04T20:52:52.356Z TCP         10.1.1.4       53748      10.1.2.4      22         Allow   N/A            AZFW1

Se você quiser ver os logs das regras de aplicativo (descrevendo conexões HTTP permitidas e negadas) ou alterar a forma como os logs são exibidos, você poderá tentar fazer isso com outras consultas KQL. Você pode encontrar alguns exemplos em logs do Azure Monitor para o Firewall do Azure.

Para limpar o ambiente de teste, exclua o grupo de recursos e todos os recursos associados usando o Remove-AzResourceGroup cmdlet. Isso removerá a WAN Virtual, o Hub Virtual, o Firewall do Azure e todos os outros recursos criados durante este tutorial.

# Delete resource group and all contained resources
Remove-AzResourceGroup -Name $RG

Implantar um novo Firewall do Azure com zonas de disponibilidade em um hub existente

As etapas anteriores mostraram como usar o Azure PowerShell para criar um novo Hub de WAN Virtual do Azure e protegê-lo com o Firewall do Azure. Você também pode proteger um Hub wan virtual do Azure existente usando uma abordagem semelhante baseada em script. Embora o Gerenciador de Firewall possa converter um hub em um Hub Protegido, ele não dá suporte à implantação do Firewall do Azure entre zonas de disponibilidade por meio do portal. Para implantar o Firewall do Azure em todas as três zonas de disponibilidade, use o script do PowerShell a seguir para converter seu Hub wan virtual existente em um Hub Protegido.

Note

Esse procedimento implanta um novo Firewall do Azure. Não é possível atualizar um Firewall do Azure existente sem zonas de disponibilidade para um com zonas de disponibilidade. Primeiro, você deve excluir o Firewall do Azure existente no hub e criá-lo novamente usando este procedimento.

# Variable definition
$RG = "vwan-rg"
$Location = "westeurope"
$VwanName = "vwan"
$HubName =  "hub1"
$FirewallName = "azfw1"
$FirewallTier = "Standard" # or "Premium"
$FirewallPolicyName = "VwanFwPolicy"

# Get references to vWAN and vWAN Hub to convert #
$Vwan = Get-AzVirtualWan -ResourceGroupName $RG -Name $VwanName
$Hub = Get-AzVirtualHub -ResourceGroupName  $RG -Name $HubName

# Create a new Firewall Policy #
$FWPolicy = New-AzFirewallPolicy -Name $FirewallPolicyName -ResourceGroupName $RG -Location $Location

# Create a new Firewall Public IP #
$AzFWPIPs = New-AzFirewallHubPublicIpAddress -Count 1
$AzFWHubIPs = New-AzFirewallHubIpAddress -PublicIP $AzFWPIPs

# Create Firewall instance #
$AzFW = New-AzFirewall -Name $FirewallName -ResourceGroupName $RG -Location $Location `
            -VirtualHubId $Hub.Id -FirewallPolicyId $FWPolicy.Id `
            -SkuName "AZFW_Hub" -HubIPAddress $AzFWHubIPs `
            -SkuTier $FirewallTier `
            -Zone 1,2,3

Depois de executar este script, as zonas de disponibilidade devem aparecer nas propriedades do hub seguro, conforme mostrado na captura de tela a seguir:

Captura de tela das zonas de disponibilidade do hub virtual seguro.

Depois de implantar o Firewall do Azure, você deve concluir as etapas de configuração descritas no Firewall do Azure de Implantação anterior e configurar a seção de roteamento personalizado para garantir o roteamento e a segurança adequados.

Próximas etapas