Partager via


Set-AzFirewall

Enregistre un pare-feu modifié.

Syntaxe

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

Description

L’applet de commande Set-AzFirewall met à jour un Pare-feu Azure.

Exemples

Exemple 1 : Mettre à jour la priorité d’une collection de règles d’application de pare-feu

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

Cet exemple met à jour la priorité d’une collection de règles existante d’un Pare-feu Azure. En supposant Pare-feu Azure « AzureFirewall » dans le groupe de ressources « rg » contient une collection de règles d’application nommée « ruleCollectionName », les commandes ci-dessus modifient la priorité de cette collection de règles et mettent à jour les Pare-feu Azure par la suite. Sans la commande Set-AzFirewall, toutes les opérations effectuées sur l’objet $azFw local ne sont pas reflétées sur le serveur.

Exemple 2 : Créer un Pare-feu Azure et définir une collection de règles d’application ultérieurement

$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

Dans cet exemple, un pare-feu est créé en premier sans regroupement de règles d’application. Ensuite, une règle d’application et une collection de règles d’application sont créées, puis l’objet Firewall est modifié en mémoire, sans affecter la configuration réelle dans le cloud. Pour que les modifications soient reflétées dans le cloud, Set-AzFirewall doit être appelé.

Exemple 3 : Mettre à jour le mode d’opération Intel contre les menaces de Pare-feu Azure

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

Cet exemple met à jour le mode d’opération Threat Intel de Pare-feu Azure « AzureFirewall » dans le groupe de ressources « rg ». Sans la commande Set-AzFirewall, toutes les opérations effectuées sur l’objet $azFw local ne sont pas reflétées sur le serveur.

Exemple 4 : Libérer et allouer le pare-feu

$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

Cet exemple récupère un pare-feu, désalloue le pare-feu et l’enregistre. La commande Libérer supprime le service en cours d’exécution, mais conserve la configuration du pare-feu. Pour que les modifications soient reflétées dans le cloud, Set-AzFirewall doit être appelé. Si l’utilisateur souhaite redémarrer le service, la méthode Allocate doit être appelée sur le pare-feu. Le nouveau réseau virtuel et l’adresse IP publique doivent se trouver dans le même groupe de ressources que le pare-feu. Là encore, pour que les modifications soient reflétées dans le cloud, Set-AzFirewall doit être appelé.

Exemple 5 : Allouer avec une adresse IP publique de gestion pour les scénarios de tunneling forcé

$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

Cet exemple alloue le pare-feu avec une adresse IP publique et un sous-réseau de gestion pour les scénarios de tunneling forcé. Le réseau virtuel doit contenir un sous-réseau appelé « AzureFirewallManagementSubnet ».

Exemple 6 : Ajouter une adresse IP publique à un Pare-feu 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

Dans cet exemple, l’adresse IP publique « azFwPublicIp1 » comme attaché au pare-feu.

Exemple 7 : Supprimer une adresse IP publique d’un Pare-feu Azure

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

$azFw | Set-AzFirewall

Dans cet exemple, l’adresse IP publique « azFwPublicIp1 » est détachée du pare-feu.

Exemple 8 : Modifier l’adresse IP publique de gestion sur un Pare-feu 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

Dans cet exemple, l’adresse IP publique de gestion du pare-feu est remplacée par « AzFwMgmtPublicIp2 »

Exemple 9 : Ajouter une configuration DNS à un Pare-feu 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

Dans cet exemple, la configuration du proxy DNS et du serveur DNS est attachée au pare-feu.

Exemple 10 : Mettre à jour la destination d’une règle existante dans une collection de règles d’application de pare-feu

$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

Cet exemple met à jour la destination d’une règle existante dans une collection de règles d’un Pare-feu Azure. Cela vous permet de mettre à jour automatiquement vos règles lorsque les adresses IP changent dynamiquement.

Exemple 11 : Autoriser le FTP actif sur Pare-feu Azure

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

$azFw | Set-AzFirewall

Dans cet exemple, le protocole FTP actif est autorisé sur le pare-feu.

Exemple 12 : Libérer et allouer le pare-feu à partir d’un hub virtuel

$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

Cet exemple récupère un pare-feu hub, désalloue le pare-feu hub et l’enregistre. La commande Libérer supprime la référence au hub virtuel, mais conserve la configuration du pare-feu. Pour que les modifications soient reflétées dans le cloud, Set-AzFirewall doit être appelé. La méthode Allocate affecte la référence du hub virtuel au pare-feu. Là encore, pour que les modifications soient reflétées dans le cloud, Set-AzFirewall doit être appelé.

Exemple 13 : Activer la journalisation des flux de gras sur Pare-feu 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

Dans cet exemple, activer la journalisation fat flow est activée sur le pare-feu.

Exemple 14 : Mettre à niveau Pare-feu Azure Standard vers Premium

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

Cet exemple met à niveau votre Pare-feu Azure Standard vers le Pare-feu Premium existant. Le processus de mise à niveau peut prendre plusieurs minutes et ne nécessite pas de temps d’arrêt du service. Une fois la mise à niveau terminée, vous pouvez remplacer votre stratégie standard de sortie par Premium.

Exemple 15 : Libérer et allouer le pare-feu avec Zones de disponibilité

$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

Cet exemple récupère un pare-feu, désalloue le pare-feu et l’enregistre. La commande Libérer supprime le service en cours d’exécution, mais conserve la configuration du pare-feu. Pour que les modifications soient reflétées dans le cloud, Set-AzFirewall doit être appelé. Si l’utilisateur souhaite redémarrer le service, mais avec Zones de disponibilité, la méthode Zones doit être appelée pour définir la Zones de disponibilité souhaitée entre guillemets et séparées par des virgules. Si Zones de disponibilité devez être supprimé, le paramètre $null doit être introduit à la place. Enfin, la méthode Allocate doit être appelée sur le pare-feu. Le nouveau réseau virtuel et l’adresse IP publique doivent se trouver dans le même groupe de ressources que le pare-feu. Là encore, pour que les modifications soient reflétées dans le cloud, Set-AzFirewall doit être appelé.

Paramètres

-AsJob

Exécuter l’applet de commande en arrière-plan

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AzureFirewall

The AzureFirewall

Type:PSAzureFirewall
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Confirm

Vous demande une confirmation avant d’exécuter l’applet de commande.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefaultProfile

Informations d’identification, compte, locataire et abonnement utilisés pour la communication avec Azure.

Type:IAzureContextContainer
Alias:AzContext, AzureRmContext, AzureCredential
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

PSAzureFirewall

Sorties

PSAzureFirewall