كيفية حظر حركة مرور الشبكة باستخدام Azure Virtual Network Manager (Preview) - Azure PowerShell

توضح لك هذه المقالة كيفية إنشاء قاعدة أمان لحظر حركة مرور الشبكة الصادرة إلى المنفذ 80 و443 التي يمكنك إضافتها إلى مجموعات القواعد. لمزيد من المعلومات، راجع قواعد مسؤول الأمان.

هام

مدير الشبكة الظاهرية Azure حالياً في المعاينة العامة. يتم توفير إصدار المعاينة هذا بدون اتفاقية مستوى الخدمة، ولا يوصى به لأحمال العمل الخاصة بالإنتاج. بعض الميزات ربما لا تكون مدعمة أو بها بعض القدرات المقيدة لمزيد من المعلومات، راجع ⁧⁩شروط الاستخدام التكميلية لمعاينات Microsoft Azure⁧⁩.

المتطلبات الأساسية

قبل البدء في تكوين قواعد الأمان، قم بتأكيد الخطوات التالية:

إنشاء تكوين مسؤول الأمان

  1. إنشاء تكوين SecurityAdmin جديد باستخدام New-AzNetworkManagerSecurityAdminConfiguration.

    $config = @{
        Name = 'SecurityConfig'
        ResourceGroupName = 'myAVNMResourceGroup'
        NetworkManagerName = 'myAVNM'
    }
    $securityconfig = New-AzNetworkManagerSecurityAdminConfiguration @config 
    
  2. تخزين مجموعة الشبكة إلى متغير باستخدام Get-AzNetworkManagerGroup.

    $ng = @{
        Name = 'myNetworkGroup'
        ResoureceGroupName = 'myAVNMResourceGroup'
        NetworkManagerName = 'myAVNM'
    }
    $networkgroup = Get-AzNetworkManagerGroup @ng   
    
  3. إنشاء عنصر مجموعة اتصال لإضافة مجموعة شبكة إلى باستخدام New-AzNetworkManagerSecurityGroupItem.

    $gi = @{
        NetworkGroupId = '$networkgroup.Id'
    }
    $groupItem = New-AzNetworkManagerSecurityGroupItem @gi
    
  4. إنشاء مجموعة تكوين وإضافة عنصر المجموعة من الخطوة السابقة.

    [System.Collections.Generic.List[Microsoft.Azure.Commands.Network.Models.PSNetworkManagerSecurityGroupItem]]$configGroup = @()  
    $configGroup.Add($groupItem) 
    
  5. إنشاء مجموعة قواعد مسؤول الأمان باستخدام New-AzNetworkManagerSecurityAdminRuleCollection.

    $collection = @{
        Name = 'myRuleCollection'
        ResourceGroupName = 'myAVNMResourceGroup'
        NetworkManager = 'myAVNM'
        ConfigName = 'SecurityConfig'
        AppliesToGroup = $configGroup
    }
    $rulecollection = New-AzNetworkManagerSecurityAdminRuleCollection @collection
    
  6. حدد المتغيرات الخاصة بادئات ومنافذ عنوان المصدر والوجهة باستخدام 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”)
    
  7. إنشاء قاعدة أمان باستخدام New-AzNetworkManagerSecurityAdminRule.

    $rule = @{
        Name = 'Block_HTTP_HTTPS'
        ResourceGroupName = 'myAVNMResourceGroup'
        NetworkManagerName = 'myAVNM'
        SecurityAdminConfigurationName = 'SecurityConfig'
        RuleCollectionName = 'myRuleCollection'
        Protocol = 'TCP'
        Access = 'Deny'
        Priority = '100'
        Direction = 'Outbound'
        Source = $sourceprefix
        SourcePortRange = $sourcePortList
        Destination = $destinationprefix
        DestinationPortRange = $destinationPortList
    }
    $securityrule = New-AzNetworkManagerSecurityAdminRule @rule
    

تثبيت النشر

قم بتعيين تكوين الأمان للمناطق المستهدفة باستخدام Deploy-AzNetworkManagerCommit.

[System.Collections.Generic.List[string]]$configIds = @()  
$configIds.add($securityconfig.id) 
[System.Collections.Generic.List[string]]regions = @()   
$regions.Add("westus")     

$deployment = @{
    Name = 'myAVNM'
    ResourceGroupName = 'myAVNMResourceGroup'
    ConfigurationId = $configIds
    TargetLocation = $regions
    CommitType = 'Security'
}
Deploy-AzNetworkManagerCommit @deployment 

حذف تكوين الأمان

إذا لم تعد بحاجة إلى تكوين الأمان، فستحتاج إلى التأكد من صحة المعايير التالية قبل أن تتمكن من حذف تكوين الأمان نفسه:

  • لا توجد عمليات نشر التكوينات إلى أي منطقة.
  • حذف كافة قواعد الأمان في مجموعة قواعد مقترنة بتكوين الأمان.

إزالة نشر تكوين الأمان

قم بإزالة نشر الأمان عن طريق نشر تكوين باستخدام 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 = 'Security'
}
Deploy-AzNetworkManagerCommit @removedeployment

إزالة قواعد الأمان

إزالة قواعد الأمان باستخدام Remove-AzNetworkManagerSecurityAdminRule.

$removerule = @{
    Name = 'Block80'
    ResourceGroupName = 'myAVNMResourceGroup'
    NetworkManagerName = 'myAVNM'
    SecurityAdminConfigurationName = 'SecurityConfig'
}
Remove-AzNetworkManagerSecurityAdminRule @removerule

إزالة مجموعات قواعد الأمان

$removecollection = @{
    Name = 'myRuleCollection'
    ResourceGroupName = 'myAVNMResourceGroup'
    NetworkManagerName = 'myAVNM'
    SecurityAdminConfigurationName = 'SecuritConfig'
}
Remove-AzNetworkManagerSecurityAdminRuleCollection @removecollection

حذف التكوين

احذف تكوين الأمان باستخدام إزالة-AzNetworkManagerSecurityAdminConfiguration.

$removeconfig = @{
    Name = 'SecurityConfig'
    ResourceGroupName = 'myAVNMResourceGroup'
    NetworkManagerName = 'myAVNM'
}
Remove-AzNetworkManagerSecurityAdminConfiguration @removeconfig

الخطوات التالية

مزيد من المعلومات حول قواعد مسؤول الأمان.