تشفير نظام التشغيل وأقراص البيانات المرفقة في مجموعة قياس جهاز ظاهري باستخدام Azure PowerShell
ينطبق على: أجهزة ظاهرية بنظام التشغيل Linux ✔️ أجهزة ظاهرية بنظام التشغيل Windows ✔️ مجموعات مقياس موحدة
تُستخدم الوحدة النمطية Azure PowerShell لإنشاء موارد Azure وإدارتها من سطر الأوامر PowerShell أو في البرامج النصية. توضح لك هذه المقالة كيفية استخدام Azure PowerShell لإنشاء مجموعة قياس جهاز ظاهري وتشفيرها. لمزيدٍ من المعلومات حول تشفير Azure Disk إلى مجموعة مقياس الجهاز الظاهري، راجع تشفير قرص Azure لمجموعات قياس الجهاز الظاهري.
استخدام Azure Cloud Shell
Azure يستضيف Azure Cloud Shell، بيئة تفاعلية يمكن استخدامها من خلال المستعرض. يمكنك استخدام Bash أو PowerShell مع Cloud Shell للعمل مع خدمات Azure. يمكنك استخدام أوامر Cloud Shell المثبتة مسبقًا لتشغيل التعليمات البرمجية في هذه المقالة دون الحاجة إلى تثبيت أي شيء على البيئة المحلية.
لبدء Azure Cloud Shell:
| خيار | مثال/ رابط |
|---|---|
| انقر فوق جربه في الزاوية العلوية اليسرى من كتلة التعليمات البرمجية. تحديد جربه لا يقوم بنسخ التعليمات البرمجية تلقائيًا إلى Cloud Shell. | ![]() |
| انتقل إلى https://shell.azure.com، أو حدد زر تشغيل Cloud Shell لفتح Cloud Shell في المتصفح لديك. | ![]() |
| حدد زر Cloud Shell في شريط القوائم في أعلى اليمين في مدخل Azure. | ![]() |
لتشغيل التعليمة البرمجية في هذا المقال في Azure Cloud Shell:
ابدأ تشغيل Cloud Shell.
حدد الزر نسخ على كتلة التعليمات البرمجية لنسخ التعليمات البرمجية.
ألصق تعليمة البرمجية في جلسة Cloud Shell بتحديد Ctrl+Shift+Vعلى Windows وLunix، أو بتحديد Cmd+Shift+Vعلى macOS.
اكتب "Enter" لتشغيل الأمر.
إنشاء مخزن رئيسي لـ Azure ممكّن لتشفير القرص
يمكن لـ Azure Key Vault تخزين المفاتيح أو الأسرار أو كلمات المرور التي تتيح لك تنفيذها بأمان في تطبيقاتك وخدماتك. يتم تخزين مفاتيح التشفير في Azure Key Vault باستخدام حماية البرامج، أو يمكنك استيراد أو إنشاء مفاتيحك في وحدات أمان الأجهزة (HSM) المعتمدة وفقًا لمعايير FIPS 140-2 من المستوى 2. تُستخدم مفاتيح التشفير هذه لتشفير وفك تشفير الأقراص الظاهرية المرفقة بجهازك الظاهري. تحتفظ بالسيطرة على مفاتيح التشفير هذه ويمكنك مراجعة استخدامها.
إنشاء مخزن رئيسي باستخدام New-AzKeyvault. للسماح باستخدام المخزن الرئيسي لتشفير القرص، قم بتعيين المعلمة EnabledForDiskEncryption. يحدد المثال التالي أيضاً المتغيرات الخاصة باسم مجموعة الموارد، واسم المخزن الرئيسي، والموقع. تقديم اسم المخزن الرئيسي الفريد الخاص بك:
$rgName="myResourceGroup"
$vaultName="myuniquekeyvault"
$location = "EastUS"
New-AzResourceGroup -Name $rgName -Location $location
New-AzKeyVault -VaultName $vaultName -ResourceGroupName $rgName -Location $location -EnabledForDiskEncryption
استخدام مخزن Key Vault موجود
هذه الخطوة مطلوبة فقط إذا كان لديك Key Vault موجود بالفعل وترغب في استخدامه مع تشفير القرص. تخطِّ هذه الخطوة إذا قمت بإنشاء Key Vault في القسم السابق.
يمكنك تمكين المخزن الرئيسي الحالي في نفس الاشتراك والمنطقة حيث تم تعيين مقياس لتشفير القرص باستخدام Set-AzKeyVaultAccessPolicy. حدد اسم المخزن الرئيسي الحالي في المتغير $vaultName على النحو التالي:
$vaultName="myexistingkeyvault"
Set-AzKeyVaultAccessPolicy -VaultName $vaultName -EnabledForDiskEncryption
إنشاء مجموعة تحجيم
أولاً عيّن اسم مستخدم المسؤول وكلمة مرور لمثيلات الجهاز الظاهري باستخدام Get-Credential:
$cred = Get-Credential
الآن أنشئ مجموعة تحجيم الجهاز الظاهري باستخدام New-AzVmss. يُنشأ موازن تحميل أيضاً لتوزيع النقل على مثيلات أجهزة ظاهرية متعددة. يتضمن موازن التحميل قواعد لتوزيع النقل على منفذ TCP 80، بالإضافة إلى السماح بنقل سطح المكتب البعيد على منفذ TCP 3389 وPowerShell الاتصال عن بُعد على منفذ TCP 5985:
$vmssName="myScaleSet"
New-AzVmss `
-ResourceGroupName $rgName `
-VMScaleSetName $vmssName `
-Location $location `
-VirtualNetworkName "myVnet" `
-SubnetName "mySubnet" `
-PublicIpAddressName "myPublicIPAddress" `
-LoadBalancerName "myLoadBalancer" `
-UpgradePolicy "Automatic" `
-Credential $cred
تمكين التشفير
لتشفير مثيلات الجهاز الظاهري في مجموعة مقياس، احصل أولاً على بعض المعلومات عن عنوان URI للمخزن الرئيسي ومعرف المورد باستخدام Get-AzKeyVault. تُستخدم هذه المتغيرات لبدء عملية التشفير باستخدام Set-AzVmssDiskEncryptionExtension:
$diskEncryptionKeyVaultUrl=(Get-AzKeyVault -ResourceGroupName $rgName -Name $vaultName).VaultUri
$keyVaultResourceId=(Get-AzKeyVault -ResourceGroupName $rgName -Name $vaultName).ResourceId
Set-AzVmssDiskEncryptionExtension -ResourceGroupName $rgName -VMScaleSetName $vmssName `
-DiskEncryptionKeyVaultUrl $diskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $keyVaultResourceId -VolumeType "All"
عند المطالبة، اكتب y لمتابعة عملية تشفير القرص على مثيلات الجهاز الظاهري لمجموعة القياس.
تمكين التشفير باستخدام KEK للف المفتاح
يمكنك أيضًا استخدام مفتاح تشفير المفتاح لمزيد من الأمان عند تشفير مجموعة مقياس الجهاز الظاهري.
$diskEncryptionKeyVaultUrl=(Get-AzKeyVault -ResourceGroupName $rgName -Name $vaultName).VaultUri
$keyVaultResourceId=(Get-AzKeyVault -ResourceGroupName $rgName -Name $vaultName).ResourceId
$keyEncryptionKeyUrl = (Get-AzKeyVaultKey -VaultName $vaultName -Name $keyEncryptionKeyName).Key.kid;
Set-AzVmssDiskEncryptionExtension -ResourceGroupName $rgName -VMScaleSetName $vmssName `
-DiskEncryptionKeyVaultUrl $diskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $keyVaultResourceId `
-KeyEncryptionKeyUrl $keyEncryptionKeyUrl -KeyEncryptionKeyVaultId $keyVaultResourceId -VolumeType "All"
ملاحظة
جملة قيمة معلمة keyvault لتشفير القرص هي سلسلة المعرف الكاملة: /subscriptions/[subscription-id-guid]/resourceGroups/[resource-group-name]/providers/Microsoft.KeyVault/vaults/[keyvault-name] بناء الجملة لقيمة معلمة مفتاح تشفير المفتاح هو عنوان URI الكامل لـ KEK كما في: https://[keyvault-name].vault.azure.net/keys/[kekname]/[kek-unique-id]
التحقق من تقدم التشفير
للتحقق من حالة تشفير القرص، استخدم Get-AzVmDiskEncryption:
Get-AzVmssDiskEncryption -ResourceGroupName $rgName -VMScaleSetName $vmssName
عندما يتم تشفير مثيلات الجهاز الظاهري، فإن EncryptionSummary تقارير التعليمات البرمجية ProvisioningState/Successed كما هو موضح في المثال التالي الناتج:
ResourceGroupName : myResourceGroup
VmScaleSetName : myScaleSet
EncryptionSettings :
KeyVaultURL : https://myuniquekeyvault.vault.azure.net/
KeyEncryptionKeyURL :
KeyVaultResourceId : /subscriptions/guid/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myuniquekeyvault
KekVaultResourceId :
KeyEncryptionAlgorithm :
VolumeType : All
EncryptionOperation : EnableEncryption
EncryptionSummary[0] :
Code : ProvisioningState/succeeded
Count : 2
EncryptionEnabled : True
EncryptionExtensionInstalled : True
تعطيل التشفير
إذا لم تعد ترغب في استخدام أقراص مثيلات الجهاز الظاهري المشفرة، فيمكنك تعطيل التشفير باستخدام Disable-AzVmssDiskEncryption على النحو التالي:
Disable-AzVmssDiskEncryption -ResourceGroupName $rgName -VMScaleSetName $vmssName
الخطوات التالية
- في هذه المقالة، لقد استخدمت Azure PowerShell لتشفير مجموعة مقياس جهاز ظاهري. يمكنك أيضاً استخدام Azure CLI أو قوالب Azure Resource Manager.
- إذا كنت ترغب في تطبيق تشفير Azure Disk Encryption بعد توفير ملحق آخر، فإنه يمكنك استخدام تسلسل الملحق.


