Blockieren von Netzwerkverkehr mit Azure Virtual Network Manager – Azure PowerShell
Dieser Artikel zeigt Ihnen, wie Sie eine Sicherheitsregel zum Blockieren von ausgehendem Netzwerkverkehr zu Port 80 und 443 erstellen, die Sie Ihren Regelsammlungen hinzufügen können. Weitere Informationen finden Sie unter Sicherheitsverwaltungsregeln.
Voraussetzungen
Bevor Sie mit der Konfiguration von Sicherheitsregeln beginnen, sollten Sie die folgenden Schritte bestätigen:
- Sie verstehen jedes Element in einer Sicherheitsverwaltungsregel.
- Sie haben eine Azure Virtual Network Manager-Instanz erstellt.
- Die installierte Version von
Az.Network
von5.3.0
oder höher ist erforderlich, um auf die erforderlichen Cmdlets zuzugreifen.
Erstellen einer SecurityAdmin-Konfiguration
Erstellen Sie eine neue SecurityAdmin-Konfiguration mit New-AzNetworkManagerSecurityAdminConfiguration.
$config = @{ Name = 'SecurityConfig' ResourceGroupName = 'myAVNMResourceGroup' NetworkManagerName = 'myAVNM' } $securityconfig = New-AzNetworkManagerSecurityAdminConfiguration @config
Speichern der Netzwerkgruppe in einer Variablen mit Get-AzNetworkManagerGroup.
$ng = @{ Name = 'myNetworkGroup' ResourceGroupName = 'myAVNMResourceGroup' NetworkManagerName = 'myAVNM' } $networkgroup = Get-AzNetworkManagerGroup @ng
Erstellen Sie mit New-AzNetworkManagerSecurityGroupItem ein Konnektivitätsgruppenelement, dem Sie eine Netzwerkgruppe hinzufügen.
$gi = @{ NetworkGroupId = "$networkgroup.Id" } $groupItem = New-AzNetworkManagerSecurityGroupItem -NetworkGroupId $networkgroup.id
Erstellen Sie eine Konfigurationsgruppe und fügen Sie die im vorherigen Schritt erstellte Gruppe hinzu.
[System.Collections.Generic.List[Microsoft.Azure.Commands.Network.Models.PSNetworkManagerSecurityGroupItem]]$configGroup = @() $configGroup.Add($groupItem) $configGroup = @($groupItem)
Erstellen Sie eine Sammlung von Sicherheitsverwaltungsregeln mit New-AzNetworkManagerSecurityAdminRuleCollection.
$collection = @{ Name = 'myRuleCollection' ResourceGroupName = 'myAVNMResourceGroup' NetworkManager = 'myAVNM' ConfigName = 'SecurityConfig' AppliesToGroup = "$configGroup" } $rulecollection = New-AzNetworkManagerSecurityAdminRuleCollection @collection -AppliesToGroup $configGroup
Definieren Sie die Variablen für die Quell- und Zieladress-Präfixe und Ports mit New-AzNetworkManagerAddressPrefixItem.
$sourceip = @{ AddressPrefix = 'Internet' AddressPrefixType = 'ServiceTag' } $sourceprefix = New-AzNetworkManagerAddressPrefixItem @sourceip $destinationip = @{ AddressPrefix = '10.0.0.0/24' AddressPrefixType = 'IPPrefix' } $destinationprefix = New-AzNetworkManagerAddressPrefixItem @destinationip [System.Collections.Generic.List[string]]$sourcePortList = @() $sourcePortList.Add("65500”) [System.Collections.Generic.List[string]]$destinationPortList = @() $destinationPortList.Add("80”) $destinationPortList.Add("443”)
Erstellen Sie eine Sicherheitsregel mit New-AzNetworkManagerSecurityAdminRule.
$rule = @{ Name = 'Block_HTTP_HTTPS' ResourceGroupName = 'myAVNMResourceGroup' NetworkManagerName = 'myAVNM' SecurityAdminConfigurationName = 'SecurityConfig' RuleCollectionName = 'myRuleCollection' Protocol = 'TCP' Access = 'Deny' Priority = '100' Direction = 'Outbound' SourceAddressPrefix = $sourceprefix SourcePortRange = $sourcePortList DestinationAddressPrefix = $destinationprefix DestinationPortRange = $destinationPortList } $securityrule = New-AzNetworkManagerSecurityAdminRule @rule
Committen der Bereitstellung
Bestätigen Sie die Sicherheitskonfiguration in den Zielregionen mit Deploy-AzNetworkManagerCommit.
$regions = @("westus")
$deployment = @{
Name = 'myAVNM'
ResourceGroupName = 'myAVNMResourceGroup'
ConfigurationId = $configIds
TargetLocation = $regions
CommitType = 'SecurityAdmin'
}
Deploy-AzNetworkManagerCommit @deployment
Sicherheitskonfiguration löschen
Wenn Sie die Sicherheitskonfiguration nicht mehr benötigen, stellen Sie sicher, dass die folgenden Kriterien erfüllt sind, damit Sie die Sicherheitskonfiguration selbst löschen können:
- In keiner Region sind Konfigurationen bereitgestellt.
- Löschen aller Sicherheitsregeln in einer Regelsammlung, die mit der Sicherheitskonfiguration verknüpft ist.
Einsatz der Sicherheitskonfiguration entfernen
Entfernen Sie die Sicherheitsbereitstellung, indem Sie eine Konfiguration mit Deploy-AzNetworkManagerCommit bereitstellen.
[System.Collections.Generic.List[string]]$configIds = @()
[System.Collections.Generic.List[string]]$regions = @()
$regions.Add("westus")
$removedeployment = @{
Name = 'myAVNM'
ResourceGroupName = 'myAVNMResourceGroup'
ConfigurationId = $configIds
TargetLocation = $regions
CommitType = 'SecurityAdmin'
}
Deploy-AzNetworkManagerCommit @removedeployment
Sicherheitsregeln entfernen
Entfernen Sie Sicherheitsregeln mit Remove-AzNetworkManagerSecurityAdminRule.
$removerule = @{
Name = 'Block80'
ResourceGroupName = 'myAVNMResourceGroup'
NetworkManagerName = 'myAVNM'
SecurityAdminConfigurationName = 'SecurityConfig'
}
Remove-AzNetworkManagerSecurityAdminRule @removerule
Sammlungen von Sicherheitsregeln entfernen
$removecollection = @{
Name = 'myRuleCollection'
ResourceGroupName = 'myAVNMResourceGroup'
NetworkManagerName = 'myAVNM'
SecurityAdminConfigurationName = 'SecurityConfig'
}
Remove-AzNetworkManagerSecurityAdminRuleCollection @removecollection
Konfiguration löschen
Löschen Sie die Sicherheitskonfiguration mit Remove-AzNetworkManagerSecurityAdminConfiguration.
$removeconfig = @{
Name = 'SecurityConfig'
ResourceGroupName = 'myAVNMResourceGroup'
NetworkManagerName = 'myAVNM'
}
Remove-AzNetworkManagerSecurityAdminConfiguration @removeconfig
Nächste Schritte
Erfahren Sie mehr über Sicherheitsverwaltungsregeln.