Partilhar 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: Prioridade de atualização de uma coleção de regras de aplicativo de 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. Depois disso, uma Regra de Aplicativo e uma Coleção de Regras de Aplicativo são criadas, em seguida, 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 Intel de Ameaça 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 Threat Intel 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, deslocaliza 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 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, o Set-AzFirewall deve ser chamado.

Exemplo 5: Alocar com um endereço IP público de gerenciamento para cenários de encapsulamento 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 encapsulamento forçado. A rede virtual 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" foi separado 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: Destino de atualização de uma regra existente dentro de uma coleção de regras de aplicativo de 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 dentro de uma coleção de regras de um Firewall do Azure. Isso permite que você atualize automaticamente suas regras quando os endereços IP mudam 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 de Hub, deslocaliza o firewall de hub e o salva. O comando Deallocate 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 de hub virtual ao firewall. Novamente, para que as alterações sejam refletidas na nuvem, o Set-AzFirewall deve ser chamado.

Exemplo 13: Habilitar o log do Fat Flow 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 seu 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 de saída 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, deslocaliza 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 Zones precisa 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 precisa ser introduzido. Finalmente, 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, o Set-AzFirewall deve ser chamado.

Parâmetros

-AsJob

Executar cmdlet em segundo plano

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-AzureFirewall

O AzureFirewall

Tipo:PSAzureFirewall
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Confirm

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

Tipo:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais: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
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-WhatIf

Apresenta o que aconteceria mediante a execução do cmdlet. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

Entradas

PSAzureFirewall

Saídas

PSAzureFirewall