كيفية حظر حركة مرور الشبكة باستخدام Azure Virtual Network Manager (Preview) - Azure PowerShell
توضح لك هذه المقالة كيفية إنشاء قاعدة أمان لحظر حركة مرور الشبكة الصادرة إلى المنفذ 80 و443 التي يمكنك إضافتها إلى مجموعات القواعد. لمزيد من المعلومات، راجع قواعد مسؤول الأمان.
هام
مدير الشبكة الظاهرية Azure حالياً في المعاينة العامة. يتم توفير إصدار المعاينة هذا بدون اتفاقية مستوى الخدمة، ولا يوصى به لأحمال العمل الخاصة بالإنتاج. بعض الميزات ربما لا تكون مدعمة أو بها بعض القدرات المقيدة لمزيد من المعلومات، راجع شروط الاستخدام التكميلية لمعاينات Microsoft Azure.
المتطلبات الأساسية
قبل البدء في تكوين قواعد الأمان، قم بتأكيد الخطوات التالية:
- أنت تفهم كل عنصر في قاعدة مسؤول الأمان.
- لقد قمت بإنشاء مثيل Azure Virtual Network Manager.
إنشاء تكوين مسؤول الأمان
إنشاء تكوين SecurityAdmin جديد باستخدام New-AzNetworkManagerSecurityAdminConfiguration.
$config = @{ Name = 'SecurityConfig' ResourceGroupName = 'myAVNMResourceGroup' NetworkManagerName = 'myAVNM' } $securityconfig = New-AzNetworkManagerSecurityAdminConfiguration @configتخزين مجموعة الشبكة إلى متغير باستخدام Get-AzNetworkManagerGroup.
$ng = @{ Name = 'myNetworkGroup' ResoureceGroupName = 'myAVNMResourceGroup' NetworkManagerName = 'myAVNM' } $networkgroup = Get-AzNetworkManagerGroup @ngإنشاء عنصر مجموعة اتصال لإضافة مجموعة شبكة إلى باستخدام New-AzNetworkManagerSecurityGroupItem.
$gi = @{ NetworkGroupId = '$networkgroup.Id' } $groupItem = New-AzNetworkManagerSecurityGroupItem @giإنشاء مجموعة تكوين وإضافة عنصر المجموعة من الخطوة السابقة.
[System.Collections.Generic.List[Microsoft.Azure.Commands.Network.Models.PSNetworkManagerSecurityGroupItem]]$configGroup = @() $configGroup.Add($groupItem)إنشاء مجموعة قواعد مسؤول الأمان باستخدام New-AzNetworkManagerSecurityAdminRuleCollection.
$collection = @{ Name = 'myRuleCollection' ResourceGroupName = 'myAVNMResourceGroup' NetworkManager = 'myAVNM' ConfigName = 'SecurityConfig' AppliesToGroup = $configGroup } $rulecollection = New-AzNetworkManagerSecurityAdminRuleCollection @collectionحدد المتغيرات الخاصة بادئات ومنافذ عنوان المصدر والوجهة باستخدام 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”)إنشاء قاعدة أمان باستخدام 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
الخطوات التالية
مزيد من المعلومات حول قواعد مسؤول الأمان.