Freigeben über


Set-AzFirewall

Speichert eine geänderte Firewall.

Syntax

Default (Standard)

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

Beschreibung

Das Cmdlet Set-AzFirewall aktualisiert einen Azure Firewall.

Beispiele

Beispiel 1: Aktualisieren der Priorität einer Firewallanwendungsregelsammlung

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

In diesem Beispiel wird die Priorität einer vorhandenen Regelauflistung eines Azure Firewall aktualisiert. Wenn Azure Firewall "AzureFirewall" in der Ressourcengruppe "rg" eine Anwendungsregelsammlung mit dem Namen "ruleCollectionName" enthält, ändern die oben genannten Befehle die Priorität dieser Regelsammlung und aktualisieren die Azure Firewall danach. Ohne den Befehl Set-AzFirewall werden alle Vorgänge, die auf dem lokalen $azFw-Objekt ausgeführt werden, nicht auf dem Server wiedergegeben.

Beispiel 2: Erstellen einer Azure Firewall und Festlegen einer Anwendungsregelsammlung später

$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

In diesem Beispiel wird zuerst eine Firewall ohne Anwendungsregelsammlungen erstellt. Anschließend wird eine Anwendungsregel- und Anwendungsregelauflistung erstellt, dann wird das Firewall-Objekt im Arbeitsspeicher geändert, ohne dass sich die tatsächliche Konfiguration in der Cloud auswirkt. Damit Änderungen in der Cloud widerzuspiegeln sind, müssen Set-AzFirewall aufgerufen werden.

Beispiel 3: Aktualisieren des Modus für den Intel-Betrieb von Bedrohungen Azure Firewall

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

In diesem Beispiel wird der Modus "Threat Intel" von Azure Firewall "AzureFirewall" in der Ressourcengruppe "rg" aktualisiert. Ohne den Befehl Set-AzFirewall werden alle Vorgänge, die auf dem lokalen $azFw-Objekt ausgeführt werden, nicht auf dem Server wiedergegeben.

Beispiel 4: Deallocate and allocate the 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

In diesem Beispiel wird eine Firewall abgerufen, die Firewall abgefragt und gespeichert. Der Befehl "Deallocate" entfernt den ausgeführten Dienst, behält jedoch die Konfiguration der Firewall bei. Damit Änderungen in der Cloud widerzuspiegeln sind, müssen Set-AzFirewall aufgerufen werden. Wenn der Benutzer den Dienst erneut starten möchte, sollte die Zuweisungsmethode für die Firewall aufgerufen werden. Das neue VNet und die öffentliche IP müssen sich in derselben Ressourcengruppe wie die Firewall befinden. Damit Änderungen in der Cloud widerzuspiegeln sind, müssen Set-AzFirewall aufgerufen werden.

Beispiel 5: Zuordnen einer öffentlichen IP-Adresse der Verwaltung für Erzwungene Tunnelszenarien

$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

In diesem Beispiel wird die Firewall mit einer öffentlichen IP-Adresse und einem Subnetz für erzwungene Tunnelszenarien zugewiesen. Das VNet muss ein Subnetz mit dem Namen "AzureFirewallManagementSubnet" enthalten.

Beispiel 6: Hinzufügen einer öffentlichen IP-Adresse zu einem Azure Firewall

$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

In diesem Beispiel wird die öffentliche IP-Adresse "azFwPublicIp1" als Anlage an die Firewall angefügt.

Beispiel 7: Entfernen einer öffentlichen IP-Adresse aus einem Azure Firewall

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

$azFw | Set-AzFirewall

In diesem Beispiel wird die öffentliche IP-Adresse "azFwPublicIp1" als getrennt von der Firewall verwendet.

Beispiel 8: Ändern der öffentlichen IP-Adresse der Verwaltung in einem Azure Firewall

$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

In diesem Beispiel wird die öffentliche IP-Adresse der Firewallverwaltung in "AzFwMgmtPublicIp2" geändert.

Beispiel 9: Hinzufügen einer DNS-Konfiguration zu einer Azure Firewall

$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

In diesem Beispiel ist die DNS-Proxy- und DNS-Serverkonfiguration an die Firewall angefügt.

Beispiel 10: Aktualisieren des Ziels einer vorhandenen Regel innerhalb einer Firewallanwendungsregelsammlung

$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

In diesem Beispiel wird das Ziel einer vorhandenen Regel in einer Regelauflistung eines Azure Firewall aktualisiert. Auf diese Weise können Sie Ihre Regeln automatisch aktualisieren, wenn SICH IP-Adressen dynamisch ändern.

Beispiel 11: Aktives FTP auf Azure Firewall zulassen

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

$azFw | Set-AzFirewall

In diesem Beispiel ist Active FTP für die Firewall zulässig.

Beispiel 12: Deallocate and allocate the Firewall from a Virtual Hub

$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

In diesem Beispiel wird eine Hubfirewall abgerufen, die Hubfirewall abgefragt und gespeichert. Der Befehl "Deallocate" entfernt den Verweis auf den virtuellen Hub, behält jedoch die Konfiguration der Firewall bei. Damit Änderungen in der Cloud widerzuspiegeln sind, müssen Set-AzFirewall aufgerufen werden. Die Assign-Methode weist der Firewall den virtuellen Hubverweis zu. Damit Änderungen in der Cloud widerzuspiegeln sind, müssen Set-AzFirewall aufgerufen werden.

Beispiel 13: Aktivieren der Fettflussprotokollierung für Azure Firewall

$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\n  \"FQDNs\": null,\r\n  \"IpAddresses\": null\r\n}"
		Type	                        : "Microsoft.Network/azureFirewalls"
		VirtualHub	                    : null
		Zones	                        : Count = 0
		privateRange	                : null

In diesem Beispiel ist "Fat Flow Logging aktivieren" in der Firewall aktiviert.

Beispiel 14: Upgrade Azure Firewall Standard auf Premium

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

In diesem Beispiel wird Ihre vorhandene Azure Firewall Standard auf Premium Firewall aktualisiert. Der Upgradevorgang kann mehrere Minuten dauern und erfordert keine Dienstablaufzeit. Nachdem das Upgrade erfolgreich abgeschlossen wurde, können Sie Ihre beendende Standardrichtlinie durch Premium ersetzen.

Beispiel 15: Deallocate and allocate the Firewall with Verfügbarkeitszonen

$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

In diesem Beispiel wird eine Firewall abgerufen, die Firewall abgefragt und gespeichert. Der Befehl "Deallocate" entfernt den ausgeführten Dienst, behält jedoch die Konfiguration der Firewall bei. Damit Änderungen in der Cloud widerzuspiegeln sind, müssen Set-AzFirewall aufgerufen werden. Wenn der Benutzer den Dienst aber mit Verfügbarkeitszonen erneut starten möchte, muss die Zones-Methode aufgerufen werden, um die gewünschte Verfügbarkeitszonen in Anführungszeichen zu definieren und durch Komma getrennt zu definieren. Falls Verfügbarkeitszonen entfernt werden muss, muss stattdessen der parameter $null eingeführt werden. Schließlich sollte die Zuweisungsmethode für die Firewall aufgerufen werden. Das neue VNet und die öffentliche IP müssen sich in derselben Ressourcengruppe wie die Firewall befinden. Damit Änderungen in der Cloud widerzuspiegeln sind, müssen Set-AzFirewall aufgerufen werden.

Beispiel 16: Aktivieren der Dnstap-Protokollierung für Azure Firewall

$azFw = Get-AzFirewall -Name "ps184" -ResourceGroupName "ps774"
$azFw.EnableDnstapLogging = $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"
		EnableDnstapLogging	            : "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\n  \"FQDNs\": null,\r\n  \"IpAddresses\": null\r\n}"
		Type	                        : "Microsoft.Network/azureFirewalls"
		VirtualHub	                    : null
		Zones	                        : Count = 0
		privateRange	                : null

In diesem Beispiel ist "Dnstap-Protokollierung aktivieren" in der Firewall aktiviert.

Parameter

-AsJob

Cmdlet im Hintergrund ausführen

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-AzureFirewall

The AzureFirewall

Parametereigenschaften

Typ:PSAzureFirewall
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:True
Wert aus Pipeline:True
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Confirm

Fordert Sie zur Bestätigung auf, bevor Sie das Cmdlet ausführen.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False
Aliase:Cf

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-DefaultProfile

Die Anmeldeinformationen, Konten, Mandanten und Abonnements, die für die Kommunikation mit Azure verwendet werden.

Parametereigenschaften

Typ:IAzureContextContainer
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False
Aliase:AzContext, AzureRmContext, AzureCredential

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-WhatIf

Zeigt, was passiert, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False
Aliase:Wi

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

CommonParameters

Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.

Eingaben

PSAzureFirewall

Ausgaben

PSAzureFirewall