Compartilhar via


Set-AzFirewall

Salva um Firewall modificado.

Sintaxe

Set-AzFirewall
   -AzureFirewall <PSAzureFirewall>
   [-AsJob]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

O cmdlet Set-AzFirewall atualiza um Firewall do Azure.

Exemplos

Exemplo 1: Atualizar prioridade de uma coleção de regras de aplicativo do Firewall

$azFw = Get-AzFirewall -Name "AzureFirewall" -ResourceGroupName "rg"
$ruleCollection = $azFw.GetApplicationRuleCollectionByName("ruleCollectionName")
$ruleCollection.Priority = 101
Set-AzFirewall -AzureFirewall $azFw

Este exemplo atualiza a prioridade de uma coleção de regras existente de um Firewall do Azure. Supondo que o Firewall do Azure "AzureFirewall" no grupo de recursos "rg" contenha uma coleção de regras de aplicativo chamada "ruleCollectionName", os comandos acima alterarão a prioridade dessa coleção de regras e atualizarão o Firewall do Azure posteriormente. Sem o comando Set-AzFirewall, todas as operações executadas no objeto $azFw local não são refletidas no servidor.

Exemplo 2: Criar um Firewall do Azure e definir uma coleção de regras de aplicativo posteriormente

$azFw = New-AzFirewall -Name "AzureFirewall" -ResourceGroupName "rg" -VirtualNetworkName "vnet-name" -PublicIpName "pip-name"

$rule = New-AzFirewallApplicationRule -Name R1 -Protocol "http:80","https:443" -TargetFqdn "*google.com", "*microsoft.com" -SourceAddress "10.0.0.0"
$RuleCollection = New-AzFirewallApplicationRuleCollection -Name RC1 -Priority 100 -Rule $rule -ActionType "Allow"
$azFw.ApplicationRuleCollections = $RuleCollection

$azFw | Set-AzFirewall

Neste exemplo, um Firewall é criado primeiro sem nenhuma coleção de regras de aplicativo. Em seguida, uma regra de aplicativo e uma coleção de regras de aplicativo são criadas, então o objeto Firewall é modificado na memória, sem afetar a configuração real na nuvem. Para que as alterações sejam refletidas na nuvem, Set-AzFirewall deve ser chamado.

Exemplo 3: Atualizar o modo de operação Threat Intel do Firewall do Azure

$azFw = Get-AzFirewall -Name "AzureFirewall" -ResourceGroupName "rg"
$azFw.ThreatIntelMode = "Deny"
Set-AzFirewall -AzureFirewall $azFw

Este exemplo atualiza o modo de operação de Informações sobre Ameaças do Firewall do Azure "AzureFirewall" no grupo de recursos "rg". Sem o comando Set-AzFirewall, todas as operações executadas no objeto $azFw local não são refletidas no servidor.

Exemplo 4: Desalocar e alocar o Firewall

$firewall=Get-AzFirewall -ResourceGroupName rgName -Name azFw
$firewall.Deallocate()
$firewall | Set-AzFirewall

$vnet = Get-AzVirtualNetwork -ResourceGroupName rgName -Name anotherVNetName
$pip = Get-AzPublicIpAddress -ResourceGroupName rgName -Name publicIpName
$firewall.Allocate($vnet, $pip)
$firewall | Set-AzFirewall

Este exemplo recupera um Firewall, desaloca o firewall e o salva. O comando Deallocate remove o serviço em execução, mas preserva a configuração do firewall. Para que as alterações sejam refletidas na nuvem, Set-AzFirewall deve ser chamado. Se o usuário quiser iniciar o serviço novamente, o método Allocate deverá ser chamado no firewall. A nova VNet e o IP Público devem estar no mesmo grupo de recursos que o Firewall. Novamente, para que as alterações sejam refletidas na nuvem, Set-AzFirewall deve ser chamado.

Exemplo 5: Alocar com um endereço IP público de gerenciamento para cenários de túnel forçado

$vnet = Get-AzVirtualNetwork -ResourceGroupName rgName -Name anotherVNetName
$pip = Get-AzPublicIpAddress -ResourceGroupName rgName -Name publicIpName
$mgmtPip = Get-AzPublicIpAddress -ResourceGroupName rgName -Name MgmtPublicIpName
$firewall.Allocate($vnet, $pip, $mgmtPip)
$firewall | Set-AzFirewall

Este exemplo aloca o firewall com um endereço IP público de gerenciamento e uma sub-rede para cenários de túnel forçado. A VNet deve conter uma sub-rede chamada "AzureFirewallManagementSubnet".

Exemplo 6: Adicionar um endereço IP público a um Firewall do Azure

$pip = New-AzPublicIpAddress -Name "azFwPublicIp1" -ResourceGroupName "rg" -Sku "Standard" -Location "centralus" -AllocationMethod Static
$azFw = Get-AzFirewall -Name "AzureFirewall" -ResourceGroupName "rg"
$azFw.AddPublicIpAddress($pip)

$azFw | Set-AzFirewall

Neste exemplo, o endereço IP público "azFwPublicIp1" está anexado ao firewall.

Exemplo 7: Remover um endereço IP público de um Firewall do Azure

$pip = Get-AzPublicIpAddress -Name "azFwPublicIp1" -ResourceGroupName "rg"
$azFw = Get-AzFirewall -Name "AzureFirewall" -ResourceGroupName "rg"
$azFw.RemovePublicIpAddress($pip)

$azFw | Set-AzFirewall

Neste exemplo, o endereço IP público "azFwPublicIp1" é desanexado do firewall.

Exemplo 8: Alterar o endereço IP público de gerenciamento em um Firewall do Azure

$newMgmtPip = New-AzPublicIpAddress -Name "azFwMgmtPublicIp2" -ResourceGroupName "rg" -Sku "Standard" -Location "centralus" -AllocationMethod Static
$azFw = Get-AzFirewall -Name "AzureFirewall" -ResourceGroupName "rg"
$azFw.ManagementIpConfiguration.PublicIpAddress = $newMgmtPip

$azFw | Set-AzFirewall

Neste exemplo, o endereço IP público de gerenciamento do firewall será alterado para "AzFwMgmtPublicIp2"

Exemplo 9: Adicionar configuração de DNS a um Firewall do Azure

$dnsServers = @("10.10.10.1", "20.20.20.2")
$azFw = Get-AzFirewall -Name "AzureFirewall" -ResourceGroupName "rg"
$azFw.DNSEnableProxy = $true
$azFw.DNSServer = $dnsServers

$azFw | Set-AzFirewall

Neste exemplo, a configuração do Proxy DNS e do Servidor DNS está anexada ao Firewall.

Exemplo 10: Atualizar o destino de uma regra existente em uma coleção de regras de aplicativo do Firewall

$azFw = Get-AzFirewall -Name "AzureFirewall" -ResourceGroupName "rg"
$ruleCollection = $azFw.GetNetworkRuleCollectionByName("ruleCollectionName")
$rule=$ruleCollection.GetRuleByName("ruleName")
$rule.DestinationAddresses = "10.10.10.10"
Set-AzFirewall -AzureFirewall $azFw

Este exemplo atualiza o destino de uma regra existente em uma coleção de regras de um Firewall do Azure. Isso permite que você atualize automaticamente suas regras quando os endereços IP forem alterados dinamicamente.

Exemplo 11: Permitir FTP ativo no Firewall do Azure

$azFw = Get-AzFirewall -Name "AzureFirewall" -ResourceGroupName "rg"
$azFw.AllowActiveFTP = $true

$azFw | Set-AzFirewall

Neste exemplo, o FTP ativo é permitido no Firewall.

Exemplo 12: Desalocar e alocar o firewall de um hub virtual

$firewall=Get-AzFirewall -ResourceGroupName rgName -Name azFw
$firewall.Deallocate()
$firewall | Set-AzFirewall

$Hub = Get-AzVirtualHub -ResourceGroupName "testRG" -Name "westushub"
$firewall.Allocate($Hub.Id)
$firewall | Set-AzFirewall

Este exemplo recupera um Firewall do Hub, desaloca o firewall do hub e o salva. O comando Desalocar remove a referência ao hub virtual, mas preserva a configuração do firewall. Para que as alterações sejam refletidas na nuvem, Set-AzFirewall deve ser chamado. O método Allocate atribui a referência do hub virtual ao firewall. Novamente, para que as alterações sejam refletidas na nuvem, Set-AzFirewall deve ser chamado.

Exemplo 13: Habilitar o log de fluxo de gordura no Firewall do Azure

$azFw = Get-AzFirewall -Name "ps184" -ResourceGroupName "ps774"
$azFw.EnableFatFlowLogging = $true

$azFw | Set-AzFirewall

AllowActiveFTP	                : null	
		ApplicationRuleCollections	    : Count = 0	
		ApplicationRuleCollectionsText	: "[]"	
		DNSEnableProxy	                : null	
		DNSServer	                    : null	
		DNSServersText	                : "null"	
		Etag	                        : "W/\"7533fa1b-8588-400d-857c-6bc372e14f1b\""
		FirewallPolicy	                : null	
		HubIPAddresses	                : null	
		Id	                            : "/subscriptions/aeb5b02a-0f18-45a4-86d6-81808115cacf/resourceGroups/ps774/providers/Microsoft.Network/azureFirewalls/ps184"	
		EnableFatFlowLogging	            : "true"	
		IpConfigurations	            : Count = 0	
		IpConfigurationsText	        : "[]"	
		Location	                    : "eastus"	
		ManagementIpConfiguration	    : null	
		ManagementIpConfigurationText	: "null"	
		Name	                        : "ps184"	
		NatRuleCollections	            : Count = 0	
		NatRuleCollectionsText	        : "[]"	
		NetworkRuleCollections	        : Count = 0	
		NetworkRuleCollectionsText	    : "[]"	
		PrivateRange	                : null	
		PrivateRangeText	            : "null"	
		ProvisioningState	            : "Succeeded"	
		ResourceGroupName	            : "ps774"	
		ResourceGuid	                : null	
		Sku	                            : {Microsoft.Azure.Commands.Network.Models.PSAzureFirewallSku}	
		Tag	                            : null	
		TagsTable	                    : null	
		ThreatIntelMode	                : "Alert"	
		ThreatIntelWhitelist	        : {Microsoft.Azure.Commands.Network.Models.PSAzureFirewallThreatIntelWhitelist}	
		ThreatIntelWhitelistText	    : "{\r
 \"FQDNs\": null,\r
 \"IpAddresses\": null\r\n}"	
		Type	                        : "Microsoft.Network/azureFirewalls"	
		VirtualHub	                    : null	
		Zones	                        : Count = 0	
		privateRange	                : null

Neste exemplo, Ativar registro de fluxo de gordura está habilitado no Firewall.

Exemplo 14: Atualizar o Firewall do Azure Standard para Premium

$azfw = Get-AzFirewall -Name "AzureFirewall" -ResourceGroupName "rg"
$azfw.Sku.Tier="Premium"
Set-AzFirewall -AzureFirewall $azfw

Este exemplo atualiza o Firewall do Azure Standard existente para o Firewall Premium. O processo de atualização pode levar vários minutos e não requer tempo de inatividade do serviço. Depois que a atualização for concluída com sucesso, você poderá substituir sua apólice padrão existente por premium.

Exemplo 15: Desalocar e alocar o firewall com zonas de disponibilidade

$firewall=Get-AzFirewall -ResourceGroupName rgName -Name azFw
$firewall.Deallocate()
$firewall | Set-AzFirewall

$vnet = Get-AzVirtualNetwork -ResourceGroupName rgName -Name anotherVNetName
$pip = Get-AzPublicIpAddress -ResourceGroupName rgName -Name publicIpName
$firewall.Zones = "1","2","3"
$firewall.Allocate($vnet, $pip)
$firewall | Set-AzFirewall

Este exemplo recupera um Firewall, desaloca o firewall e o salva. O comando Deallocate remove o serviço em execução, mas preserva a configuração do firewall. Para que as alterações sejam refletidas na nuvem, Set-AzFirewall deve ser chamado. Se o usuário quiser iniciar o serviço novamente, mas com zonas de disponibilidade, o método Zonas precisará ser chamado, definindo as zonas de disponibilidade desejadas entre aspas e separadas por vírgula. Caso as Zonas de Disponibilidade precisem ser removidas, o parâmetro $null precisará ser introduzido. Por fim, o método Allocate deve ser chamado no firewall. A nova VNet e o IP Público devem estar no mesmo grupo de recursos que o Firewall. Novamente, para que as alterações sejam refletidas na nuvem, Set-AzFirewall deve ser chamado.

Parâmetros

-AsJob

Executar cmdlet em segundo plano

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-AzureFirewall

O AzureFirewall

Tipo:PSAzureFirewall
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-Confirm

Solicita sua confirmação antes de executar o cmdlet.

Tipo:SwitchParameter
Aliases:cf
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-DefaultProfile

As credenciais, a conta, o locatário e a assinatura usados para comunicação com o Azure.

Tipo:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

PSAzureFirewall

Saídas

PSAzureFirewall