Como bloquear o tráfego de rede com o Gerenciador de Rede Virtual do Azure (versão prévia) – Azure PowerShell
Este artigo mostra como criar e adicionar a uma coleção uma regra de segurança para bloquear o tráfego de rede de saída nas portas 80 e 443. Para obter mais informações, confira Regras de administrador de segurança.
Pré-requisitos
Antes de começar a configurar regras de segurança, confirme as seguintes etapas:
- Você entendeu cada elemento de uma Regra de administrador de segurança.
- Você criou uma instância de Gerenciador de Rede Virtual do Azure.
- A versão instalada de
Az.Network
de5.3.0
ou superior é necessária para acessar os cmdlets necessários.
Criar uma configuração de SecurityAdmin
Crie uma nova configuração SecurityAdmin com New-AzNetworkManagerSecurityAdminConfiguration.
$config = @{ Name = 'SecurityConfig' ResourceGroupName = 'myAVNMResourceGroup' NetworkManagerName = 'myAVNM' } $securityconfig = New-AzNetworkManagerSecurityAdminConfiguration @config
Armazene o grupo de rede em uma variável com Get-AzNetworkManagerGroup.
$ng = @{ Name = 'myNetworkGroup' ResourceGroupName = 'myAVNMResourceGroup' NetworkManagerName = 'myAVNM' } $networkgroup = Get-AzNetworkManagerGroup @ng
Crie um item de grupo de conectividade para adicionar um grupo de rede com New-AzNetworkManagerSecurityGroupItem.
$gi = @{ NetworkGroupId = "$networkgroup.Id" } $groupItem = New-AzNetworkManagerSecurityGroupItem -NetworkGroupId $networkgroup.id
Crie um grupo de configuração e adicione o item de grupo da etapa anterior.
[System.Collections.Generic.List[Microsoft.Azure.Commands.Network.Models.PSNetworkManagerSecurityGroupItem]]$configGroup = @() $configGroup.Add($groupItem) $configGroup = @($groupItem)
Crie uma coleção de regras de administrador de segurança com New-AzNetworkManagerSecurityAdminRuleCollection.
$collection = @{ Name = 'myRuleCollection' ResourceGroupName = 'myAVNMResourceGroup' NetworkManager = 'myAVNM' ConfigName = 'SecurityConfig' AppliesToGroup = "$configGroup" } $rulecollection = New-AzNetworkManagerSecurityAdminRuleCollection @collection -AppliesToGroup $configGroup
Defina as variáveis para os prefixos de endereço de origem e de destino e as portas com 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”)
Crie uma regra de segurança com 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
Confirmar implantação
Confirme a configuração de segurança para as regiões de destino com Deploy-AzNetworkManagerCommit.
$regions = @("westus")
$deployment = @{
Name = 'myAVNM'
ResourceGroupName = 'myAVNMResourceGroup'
ConfigurationId = $configIds
TargetLocation = $regions
CommitType = 'SecurityAdmin'
}
Deploy-AzNetworkManagerCommit @deployment
Excluir a configuração de segurança
Se você não precisar mais da configuração de segurança, será necessário garantir que os seguintes critérios sejam verdadeiros antes de excluí-la:
- Não há nenhuma implantação de configurações em qualquer região.
- Exclua todas as regras de segurança em uma coleção de regras associada à configuração de segurança.
Remover implantação de configuração de segurança
Remova a implantação de segurança implantando uma configuração com Deploy-AzNetworkManagerCommit.
[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
Remover regras de segurança
Remova as regras de segurança com Remove-AzNetworkManagerSecurityAdminRule.
$removerule = @{
Name = 'Block80'
ResourceGroupName = 'myAVNMResourceGroup'
NetworkManagerName = 'myAVNM'
SecurityAdminConfigurationName = 'SecurityConfig'
}
Remove-AzNetworkManagerSecurityAdminRule @removerule
Remover coleções de regras de segurança
$removecollection = @{
Name = 'myRuleCollection'
ResourceGroupName = 'myAVNMResourceGroup'
NetworkManagerName = 'myAVNM'
SecurityAdminConfigurationName = 'SecurityConfig'
}
Remove-AzNetworkManagerSecurityAdminRuleCollection @removecollection
Excluir configuração
Exclua a configuração de segurança com Remove-AzNetworkManagerSecurityAdminConfiguration.
$removeconfig = @{
Name = 'SecurityConfig'
ResourceGroupName = 'myAVNMResourceGroup'
NetworkManagerName = 'myAVNM'
}
Remove-AzNetworkManagerSecurityAdminConfiguration @removeconfig
Próximas etapas
Saiba mais sobre Regras de administrador de segurança.