Udostępnij przez


Set-AzFirewall

Zapisuje zmodyfikowaną zaporę.

Składnia

Default (domyślnie)

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

Opis

Polecenie cmdlet Set-AzFirewall aktualizuje usługę Azure Firewall.

Przykłady

Przykład 1. Aktualizowanie priorytetu kolekcji reguł aplikacji zapory

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

W tym przykładzie zaktualizowano priorytet istniejącej kolekcji reguł usługi Azure Firewall. Przy założeniu, że usługa Azure Firewall "AzureFirewall" w grupie zasobów "rg" zawiera kolekcję reguł aplikacji o nazwie "ruleCollectionName", powyższe polecenia zmienią priorytet tej kolekcji reguł i zaktualizują usługę Azure Firewall później. Bez polecenia Set-AzFirewall wszystkie operacje wykonywane na lokalnym obiekcie $azFw nie są odzwierciedlane na serwerze.

Przykład 2. Tworzenie usługi Azure Firewall i ustawianie kolekcji reguł aplikacji później

$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

W tym przykładzie zapora jest tworzona jako pierwsza bez żadnych kolekcji reguł aplikacji. Następnie tworzona jest reguła aplikacji i kolekcja reguł aplikacji, a następnie obiekt zapory jest modyfikowany w pamięci bez wpływu na rzeczywistą konfigurację w chmurze. Aby zmiany zostały odzwierciedlone w chmurze, należy wywołać Set-AzFirewall.

Przykład 3. Aktualizowanie trybu działania funkcji Intel threat Intel w usłudze Azure Firewall

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

W tym przykładzie zaktualizowano tryb operacji narzędzia Threat Intel usługi Azure Firewall "AzureFirewall" w grupie zasobów "rg". Bez polecenia Set-AzFirewall wszystkie operacje wykonywane na lokalnym obiekcie $azFw nie są odzwierciedlane na serwerze.

Przykład 4. Cofnięcie przydziału i przydzielenie zapory

$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

W tym przykładzie jest pobierana zapora, cofa przydział zapory i zapisuje ją. Polecenie Cofnij przydział usuwa uruchomioną usługę, ale zachowuje konfigurację zapory. Aby zmiany zostały odzwierciedlone w chmurze, należy wywołać Set-AzFirewall. Jeśli użytkownik chce ponownie uruchomić usługę, należy wywołać metodę Allocate w zaporze. Nowa sieć wirtualna i publiczny adres IP muszą znajdować się w tej samej grupie zasobów co zapora. Ponownie, aby zmiany zostały odzwierciedlone w chmurze, należy wywołać Set-AzFirewall.

Przykład 5. Przydziel z publicznym adresem IP zarządzania dla scenariuszy wymuszonego tunelowania

$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

W tym przykładzie zapora jest przydzielana z publicznym adresem IP i podsiecią zarządzania na potrzeby scenariuszy wymuszonego tunelowania. Sieć wirtualna musi zawierać podsieć o nazwie "AzureFirewallManagementSubnet".

Przykład 6. Dodawanie publicznego adresu IP do usługi 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

W tym przykładzie publiczny adres IP "azFwPublicIp1" jako dołączony do zapory.

Przykład 7. Usuwanie publicznego adresu IP z usługi Azure Firewall

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

$azFw | Set-AzFirewall

W tym przykładzie publiczny adres IP "azFwPublicIp1" jest odłączony od zapory.

Przykład 8. Zmiana publicznego adresu IP zarządzania w usłudze 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

W tym przykładzie publiczny adres IP zarządzania zapory zostanie zmieniony na "AzFwMgmtPublicIp2"

Przykład 9. Dodawanie konfiguracji DNS do usługi 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

W tym przykładzie konfiguracja serwera proxy DNS i serwera DNS jest dołączona do zapory.

Przykład 10: Aktualizowanie lokalizacji docelowej istniejącej reguły w kolekcji reguł aplikacji zapory

$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

Ten przykład aktualizuje lokalizację docelową istniejącej reguły w kolekcji reguł usługi Azure Firewall. Dzięki temu można automatycznie aktualizować reguły, gdy adresy IP zmieniają się dynamicznie.

Przykład 11: Zezwalaj na aktywny protokół FTP w usłudze Azure Firewall

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

$azFw | Set-AzFirewall

W tym przykładzie aktywna usługa FTP jest dozwolona w zaporze.

Przykład 12: Cofnięcie przydziału i przydziel zaporę z koncentratora wirtualnego

$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

W tym przykładzie jest pobierana zapora koncentratora, cofa przydział zapory centrum i zapisuje ją. Polecenie Cofnij przydział usuwa odwołanie do koncentratora wirtualnego, ale zachowuje konfigurację zapory. Aby zmiany zostały odzwierciedlone w chmurze, należy wywołać Set-AzFirewall. Metoda Assign przypisuje odwołanie do koncentratora wirtualnego do zapory. Ponownie, aby zmiany zostały odzwierciedlone w chmurze, należy wywołać Set-AzFirewall.

Przykład 13. Włączanie rejestrowania przepływu tłuszczu w usłudze 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

W tym przykładzie włącz rejestrowanie przepływu tłuszczu jest włączone w zaporze.

Przykład 14: Uaktualnianie usługi Azure Firewall w warstwie Standardowa do warstwy Premium

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

Ten przykład uaktualnia istniejącą zaporę Azure Firewall w warstwie Standardowa do zapory Premium. Proces uaktualniania może potrwać kilka minut i nie wymaga czasu przestoju usługi. Po pomyślnym zakończeniu uaktualniania można zastąpić standardowe zasady w warstwie Premium.

Przykład 15: Cofnięcie przydziału i przydzielenie zapory ze strefami dostępności

$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

W tym przykładzie jest pobierana zapora, cofa przydział zapory i zapisuje ją. Polecenie Cofnij przydział usuwa uruchomioną usługę, ale zachowuje konfigurację zapory. Aby zmiany zostały odzwierciedlone w chmurze, należy wywołać Set-AzFirewall. Jeśli użytkownik chce ponownie uruchomić usługę, ale ze strefami dostępności, należy wywołać metodę Zones definiującą żądane strefy dostępności w cudzysłowie i oddzieloną przecinkami. W przypadku konieczności usunięcia stref dostępności należy zamiast tego wprowadzić parametr $null. Na koniec należy wywołać metodę Allocate w zaporze. Nowa sieć wirtualna i publiczny adres IP muszą znajdować się w tej samej grupie zasobów co zapora. Ponownie, aby zmiany zostały odzwierciedlone w chmurze, należy wywołać Set-AzFirewall.

Przykład 16. Włączanie rejestrowania dnstap w usłudze 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

W tym przykładzie włączenie rejestrowania dnstapu jest włączone w zaporze.

Parametry

-AsJob

Uruchamianie polecenia cmdlet w tle

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-AzureFirewall

The AzureFirewall

Właściwości parametru

Typ:PSAzureFirewall
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:True
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Confirm

Prosi o potwierdzenie przed uruchomieniem cmdletu.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:por

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-DefaultProfile

Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.

Właściwości parametru

Typ:IAzureContextContainer
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:AzContext, AzureRmContext, AzureCredential

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-WhatIf

Pokazuje, co się stanie, jeśli polecenie cmdlet zostanie uruchomione. Cmdlet nie jest uruchomiony.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:Wi

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

CommonParameters

To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.

Dane wejściowe

PSAzureFirewall

Dane wyjściowe

PSAzureFirewall