سيناريوهات تشفير قرص Azure على أجهزة ظاهرية تعمل بنظام Windows

ينطبق على: ✔️ أجهزة Linux الظاهرية ✔️ مجموعات مقياس مرنة

يستخدم تشفير قرص Azure للأجهزة الظاهرية (VMs) التي تستخدم نظام تشغيل Linux ميزة DM-Crypt من Linux لتوفير تشفير القرص الكامل من قرص نظام التشغيل وأقراص البيانات. بالإضافة إلى ذلك، فإنه يوفر تشفير القرص المؤقت عند استخدام ميزة EncryptFormatAll.

تم دمج تشفير قرص Azure مع Azure Key Vault لمساعدتك على التحكم في مفاتيح تشفير القرص والأسرار وإدارتها. للحصول على نظرة عامة على الخدمة، راجع تشفير قرص Azure لأجهزة Linux الظاهرية.

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

يمكنك فقط تطبيق تشفير القرص على الأجهزة الظاهرية ذات أحجام الأجهزة الظاهرية وأنظمة التشغيل المدعومة. يجب عليك أيضاً تلبية المتطلبات الأساسية التالية:

في جميع الحالات، يجب عليك التقاط لقطة و/أو إنشاء نسخة احتياطية قبل تشفير الأقراص. تضمن النسخ الاحتياطية إمكانية خيار الاسترداد في حال حدوث فشل غير متوقع في أثناء التشفير. تتطلب الأجهزة الظاهرية ذات الأقراص المدارة نسخة احتياطية لما قبل حدوث التشفير. بمجرد إجراء نسخة احتياطية، يمكنك استخدام cmdlet Set-AzVMDiskEncryptionExtension لتشفير الأقراص المدارة عن طريق تحديد المعلمة -skipVmBackup. لمزيدٍ من المعلومات حول كيفية عمل نسخة احتياطية من الأجهزة الظاهرية المشفرة واستعادتها، راجع مقالة Azure Backup.

القيود

إذا كنت قد استخدمت تشفير قرص Azure مسبقا مع معرف Microsoft Entra لتشفير جهاز ظاهري، يجب الاستمرار في استخدام هذا الخيار لتشفير الجهاز الظاهري الخاص بك. راجع تشفير قرص Azure باستخدام معرف Microsoft Entra (الإصدار السابق) للحصول على التفاصيل.

عند تشفير وحدات تخزين نظام التشغيل Linux، يجب اعتبار الجهاز الظاهري غير متوفر. نوصي بشدة بتجنب تسجيلات الدخول الخاصة ب SSH أثناء إجراء التشفير لتجنب حدوث مشكلات في حظر أي ملفات مفتوحة ستحتاج إلى الوصول إليها أثناء عملية التشفير. للتحقق من التقدم، استخدم أمر cmdlet لـPowerShellGet-AzVMDiskEncryptionStatus أو أمر CLI إظهار التشفير VM. يمكن توقع أن تستغرق هذه العملية بضع ساعات لوحدة تخزين نظام تشغيل تبلغ 30 جيجابايت، بالإضافة إلى وقت إضافي لتشفير أحجام البيانات. سيكون وقت تشفير حجم البيانات متناسباً مع حجم وكمية أحجام البيانات ما لم يتم استخدام خيار تنسيق التشفير بالكامل.

تعطيل التشفير على أجهزة Linux الظاهرية مدعوم فقط لوحدات تخزين البيانات. ولا يكون مدعوماً على البيانات أو وحدات تخزين نظام التشغيل إذا تم تشفير وحدة تخزين نظام التشغيل.

لا يعمل تشفير قرص Azure مع سيناريوهات Linux وميزاته وتقنياته التالية:

  • تشفير الأجهزة الظاهرية الأساسية للطبقة أو الأجهزة الظاهرية التي تم إنشاؤها من خلال طريقة إنشاء الأجهزة الظاهرية الكلاسيكية.
  • تعطيل التشفير على محرك أقراص نظام التشغيل أو محرك أقراص البيانات الخاص بجهاز Linux الظاهري عند تشفير محرك أقراص نظام التشغيل.
  • تشفير محرك أقراص نظام التشغيل لمجموعات مقياس الجهاز الظاهري Linux.
  • تشفير الصور المخصصة على أجهزة Linux الظاهرية.
  • التكامل مع نظام إدارة المفاتيح المحلية.
  • ملفات Azure (نظام الملفات المشترك).
  • بروتوكول Network File System (NFS).
  • وحدات تخزين ديناميكية.
  • أقراص نظام التشغيل سريعة الزوال.
  • تشفير أنظمة الملفات المشتركة/الموزعة مثل (على سبيل المثال لا الحصر): DFS وGFS وDRDB وCephFS.
  • نقل جهاز ظاهري مشفر إلى اشتراك أو منطقة أخرى.
  • إنشاء صورة أو لقطة لجهاز ظاهري مشفر واستخدامه لنشر أجهزة ظاهرية إضافية.
  • تفريغ تحطم النواة (kdump).
  • Oracle ACFS (نظام ملفات الكتلة ASM).
  • أقراص NVMe مثل تلك الموجودة على أحجام الأجهزة الظاهرية للحوسبة عالية الأداء أو أحجام الأجهزة الظاهرية المحسنة للتخزين.
  • جهاز ظاهري مع "نقاط تركيب متداخلة"؛ أي نقاط تحميل متعددة في مسار واحد (مثل "/1stmountpoint/data/2stmountpoint").
  • جهاز ظاهري مزود بمحرك أقراص بيانات مثبت أعلى مجلد نظام التشغيل.
  • جهاز ظاهري تم فيه توسيع وحدة تخزين منطقية جذر (قرص نظام التشغيل) باستخدام قرص بيانات.
  • الأجهزة الظاهرية من الفئة M المزودة بأقراص مسرع الكتابة.
  • تطبيق ADE على جهاز ظاهري يحتوي على أقراص مشفرة باستخدام التشفير في المضيف أو التشفير من جانب الخادم باستخدام مفاتيح يديرها العميل (SSE + CMK). تطبيق SSE + CMK على قرص بيانات أو إضافة قرص بيانات مع SSE + CMK تم تكوينه إلى جهاز ظاهري مشفر باستخدام ADE هو سيناريو غير مدعوم أيضا.
  • ترحيل جهاز ظاهري مشفر باستخدام ADE، أو تم تشفيره من أي وقت مضى باستخدام ADE، إلى التشفير في المضيف أو التشفير من جانب الخادم باستخدام مفاتيح يديرها العميل.
  • تشفير الأجهزة الظاهرية في مجموعات تجاوز الفشل.
  • تشفير أقراص Azure ultra.
  • تشفير أقراص Premium SSD v2.
  • يجب أن يكون لتشفير الأجهزة الظاهرية في الاشتراكات التي تحتوي على البيانات السرية نهج فترة الصلاحية القصوى المحددة الممكنة مع تأثير DENY.

تثبيت الأدوات والاتصال بـ Azure

يمكن تمكين تشفير قرص Azure وإدارته من خلال Azure CLIوAzure PowerShell. للقيام بذلك، يجب عليك تثبيت الأدوات محلياً والاتصال باشتراك Azure الخاص بك.

إن Azure CLI 2.0 هي أداة سطر أوامر لإدارة موارد Azure. تم تصميم واجهة سطر الأوامر (CLI) للاستعلام عن البيانات بمرونة، ودعم العمليات طويلة المدى كعمليات غير معطلة، وتسهيل البرمجة النصية. يمكنك تثبيته محلياً باتباع الخطوات الواردة في تثبيت Azure CLI.

من أجل تسجيل الدخول إلى حساب Azure الخاص بك باستخدام Azure CLI، استخدم الأمر az login.

az login

إذا كنت ترغب في تحديد مستأجر لتسجيل الدخول من خلاله، فاستخدم:

az login --tenant <tenant>

إذا كانت لديك اشتراكات متعددة وترغب في تحديد اشتراك معين، فاحصل على قائمة الاشتراك الخاصة بك مع قائمة حسابات az وحددها باستخدام مجموعة حساب az.

az account list
az account set --subscription "<subscription name or ID>"

لمزيدٍ من المعلومات، راجع بدء استخدام Azure CLI 2.0.

تمكين التشفير على جهاز Linux ظاهري موجود أو قيد التشغيل

في هذا السيناريو، يمكنك تمكين التشفير باستخدام أوامر قالب Resource Manager أو أوامر PowerShell cmdlets أو CLI. إذا كنت بحاجة إلى معلومات المخطط لملحق الجهاز الظاهري، فراجع مقالة تشفير قرص Azure لملحق Linux.

هام

من الضروري أخذ لقطة و/أو نسخ احتياطي لمثيل الجهاز الظاهري المستند إلى قرص مُدار خارج، وقبل تمكين تشفير قرص Azure. يمكن أخذ لقطة للقرص المُدار من المدخل، أو من خلال Azure Backup. تضمن النسخ الاحتياطية إمكانية وجود خيار استرداد في حال حدوث أي فشل غير متوقع أثناء التشفير. بمجرد إجراء نسخة احتياطية، يمكنك استخدام cmdlet Set-AzVMDiskEncryptionExtension لتشفير الأقراص المدارة عن طريق تحديد المعلمة -skipVmBackup. سيفشل الأمر Set-AzVMDiskEncryptionExtension مقابل الأجهزة الظاهرية المستندة إلى القرص المُدار حتى يتم عمل نسخة احتياطية وتحديد هذه المعلمة.

قد يؤدي التشفير أو تعطيل التشفير إلى إعادة تشغيل جهاز ظاهري.

لتعطيل التشفير، راجع تعطيل التشفير وإزالة ملحق التشفير.

يمكنك تمكين تشفير القرص على جهاز VHD المشفر بتثبيت واستخدام أداة سطر الأوامر Azure CLI. يمكنك استخدامه في متصفحك مع Azure Cloud Shell، أو تثبيته على جهازك المحلي واستخدامه في أي جلسة PowerShell. لتمكين التشفير على أجهزة Linux الظاهرية الموجودة أو قيد التشغيل في Azure، استخدم أوامر CLI التالية:

استخدم الأمر تمكين تشفير az vm لتمكين التشفير على جهاز ظاهري قيد التشغيل في Azure.

  • تشفير جهاز ظاهري قيد التشغيل:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --disk-encryption-keyvault "MySecureVault" --volume-type [All|OS|Data]
    
  • تشفير جهاز ظاهري قيد التشغيل باستخدام KEK:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --disk-encryption-keyvault  "MySecureVault" --key-encryption-key "MyKEK_URI" --key-encryption-keyvault "MySecureVaultContainingTheKEK" --volume-type [All|OS|Data]
    

    إشعار

    بناء جملة قيمة المعلمة keyvault لتشفير القرص هي سلسلة المعرف الكاملة: /subscriptions/[subscription-id-guid]/resourceGroups/[resource-group-name]/providers/Microsoft.KeyVault/[keyvault-name] بناء جملة قيمة معلمة مفتاح تشفير المفتاح هي عنوان URI الكامل لـ KEK كما في: https://[keyvault-name].vault.azure.net/keys/[kekname]/[kek-unique-id]

  • تحقق من تشفير الأقراص: للتحقق من حالة تشفير جهاز ظاهري، استخدم الأمر إظهار تشفير az vm.

    az vm encryption show --name "MySecureVM" --resource-group "MyVirtualMachineResourceGroup"
    

لتعطيل التشفير، راجع تعطيل التشفير وإزالة ملحق التشفير.

استخدام ميزة EncryptFormatAll لأقراص البيانات على أجهزة Linux الظاهرية

تقلل المعلمة EncryptFormatAll من وقت تشفير أقراص بيانات Linux. سيتم تنسيق الأقسام التي تفي بمعايير معينة، جنباً إلى جنب مع أنظمة الملفات الحالية، ثم إعادة تحميلها إلى حيث كانت قبل تنفيذ الأمر. إذا كنت ترغب في استبعاد قرص بيانات يفي بالمعايير، فيمكنك إلغاء تحميله قبل تشغيل الأمر.

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

التحذير

لا ينبغي استخدام EncryptFormatAll عند الحاجة إلى بيانات على وحدات تخزين بيانات الجهاز الظاهري. يمكنك استبعاد الأقراص من التشفير عن طريق إلغاء تحميلها. يجب عليك أولاً تجربة EncryptFormatAll أولاً في اختبار جهاز ظاهري، وفهم معلمة الميزة وتداعياتها قبل تجربتها على الجهاز الظاهري للإنتاج. يقوم الخيار EncryptFormatAll بتنسيق قرص البيانات وستفقد جميع البيانات الموجودة عليه. قبل المتابعة، تحقق من إلغاء تحميل الأقراص التي ترغب في استبعادها بشكلٍ صحيح.

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

معيار EncryptFormatAll

تمر المعلمة عبر جميع الأقسام وتشفيرها طالما أنها تفي بجميع المعايير أدناه:

  • ليس قسم الجذر/نظام التشغيل/التمهيد
  • غير مشفر بالفعل
  • ليست وحدة تخزين BEK
  • ليست وحدة تخزين RAID
  • ليست وحدة تخزين LVM
  • مثبت

تشفير الأقراص التي تتكون منها وحدة تخزين RAID أو LVM بدلاً من وحدة تخزين RAID أو LVM.

استخدم الأمر تمكين تشفير az vm لتمكين التشفير على جهاز ظاهري قيد التشغيل في Azure.

  • تشفير جهاز ظاهري قيد التشغيل باستخدام EncryptFormatAll:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --disk-encryption-keyvault "MySecureVault" --volume-type "data" --encrypt-format-all
    

استخدام المعلمة EncryptFormatAll مع إدارة وحدة التخزين المنطقية (LVM)

نوصي بإعداد LVM-on-crypt. للحصول على إرشادات مفصلة حول LVM على تكوين التشفير، راجع تكوين LVM و RAID على الأجهزة المشفرة ADE.

الأجهزة الظاهرية الجديدة التي تم إنشاؤها من VHD المشفرة من قبل العميل ومفاتيح التشفير

في هذا السيناريو، يمكنك تمكين التشفير باستخدام أوامر PowerShell cmdlets أو أوامر CLI.

استخدم الإرشادات الموجودة في نفس البرامج النصية لتشفير Azure Disk لإعداد الصور المشفرة مسبقاً التي يمكن استخدامها في Azure. بعد إنشاء الصورة، يمكنك استخدام الخطوات الواردة في القسم التالي لإنشاء جهاز Azure ظاهري مشفر.

هام

من الضروري أخذ لقطة و/أو نسخ احتياطي لمثيل الجهاز الظاهري المستند إلى قرص مُدار خارج، وقبل تمكين تشفير قرص Azure. يمكن أخذ لقطة من القرص المُدار من المدخل، أو يمكن استخدام Azure Backup. تضمن النسخ الاحتياطية إمكانية وجود خيار استرداد في حال حدوث أي فشل غير متوقع أثناء التشفير. بمجرد إجراء نسخة احتياطية، يمكنك استخدام cmdlet Set-AzVMDiskEncryptionExtension لتشفير الأقراص المدارة عن طريق تحديد المعلمة -skipVmBackup. سيفشل الأمر Set-AzVMDiskEncryptionExtension مقابل الأجهزة الظاهرية المستندة إلى القرص المُدار حتى يتم عمل نسخة احتياطية وتحديد هذه المعلمة.

قد يؤدي التشفير أو تعطيل التشفير إلى إعادة تشغيل جهاز ظاهري.

استخدم Azure PowerShell لتشفير الأجهزة الظاهرية باستخدام VHDs المشفرة مسبقاً

يمكنك تمكين تشفير القرص على VHD المشفر باستخدام PowerShell cmdlet Set-AzVMOSDisk. يمنحك المثال أدناه بعض المعلمات الشائعة.

$VirtualMachine = New-AzVMConfig -VMName "MySecureVM" -VMSize "Standard_A1"
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name "SecureOSDisk" -VhdUri "os.vhd" Caching ReadWrite -Linux -CreateOption "Attach" -DiskEncryptionKeyUrl "https://mytestvault.vault.azure.net/secrets/Test1/514ceb769c984379a7e0230bddaaaaaa" -DiskEncryptionKeyVaultId "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.KeyVault/vaults/mytestvault"
New-AzVM -VM $VirtualMachine -ResourceGroupName "MyVirtualMachineResourceGroup"

تمكين التشفير على قرص بيانات تمت إضافته حديثاً

يمكنك إضافة قرص بيانات جديد باستخدام إرفاق قرص az vm، أو من خلال مدخل Azure. قبل أن تتمكن من التشفير، تحتاج أولاً إلى تحميل قرص البيانات المرفق حديثاً. يجب عليك طلب تشفير محرك أقراص البيانات نظراً لأن محرك الأقراص سيكون غير قابل للاستخدام أثناء إجراء التشفير.

إذا تم تشفير الجهاز الظاهري مسبقاً باستخدام "الكل"، فيجب أن تظل المعلمة --volume-type "All". تتضمن جميعها كلاً من أقراص البيانات ونظام التشغيل. إذا تم تشفير الجهاز الظاهري مسبقاً بنوع وحدة تخزين "OS"، فيجب تغيير المعلمة --volume-type إلى "All" بحيث يتم تضمين كل من نظام التشغيل وقرص البيانات الجديد. إذا تم تشفير الجهاز الظاهري بنوع وحدة التخزين "البيانات" فقط، فيمكن أن تظل "بيانات" كما هو موضح أدناه. لا تعد إضافة قرص بيانات جديد وإرفاقه بجهاز ظاهري إعداداً كافياً للتشفير. يجب أيضاً تنسيق القرص المتصل حديثاً وتركيبه بشكلٍ صحيح داخل الجهاز الظاهري قبل تمكين التشفير. في نظام التشغيل Linux، يجب تثبيت القرص في /etc/fstab باستخدام اسم جهاز حظر دائم.

على عكس بناء جملة PowerShell، لا يتطلب CLI من المستخدم تقديم إصدار تسلسل فريد عند تمكين التشفير. يقوم CLI تلقائياً بإنشاء واستخدام قيمة إصدار التسلسل الفريد الخاص به.

  • تشفير وحدات تخزين البيانات الخاصة بجهاز ظاهري قيد التشغيل:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --disk-encryption-keyvault "MySecureVault" --volume-type "Data"
    
  • تشفير وحدات تخزين البيانات الخاصة بجهاز ظاهري قيد التشغيل باستخدام KEK:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --disk-encryption-keyvault  "MySecureVault" --key-encryption-key "MyKEK_URI" --key-encryption-keyvault "MySecureVaultContainingTheKEK" --volume-type "Data"
    

تعطيل التشفير وإزالة ملحق التشفير

يمكنك تعطيل ملحق تشفير قرص Azure، كما يمكنك إزالة ملحق تشفير قرص Azure. هاتان عمليتان متميزتان.

لإزالة ADE، يوصى أولاً بتعطيل التشفير ثم إزالة الملحق. إذا قمت بإزالة ملحق التشفير دون تعطيله، فستظل الأقراص مشفرة. إذا قمت بتعطيل التشفير بعد إزالة الملحق، فستتم إعادة تثبيت الملحق (لإجراء عملية فك التشفير) وسيتعين إزالته مرة أخرى.

التحذير

لا يمكنك تعطيل التشفير إذا كان قرص نظام التشغيل مشفراً. (يتم تشفير أقراص نظام التشغيل عندما تحدد عملية التشفير الأصلية specifies volumeType=ALL أو volumeType=OS.)

يعمل تعطيل التشفير فقط عندما يتم تشفير أقراص البيانات بينما لا يتم تشفير قرص نظام التشغيل.

تعطيل التشفير

يمكنك تعطيل التشفير باستخدام Azure PowerShell أو Azure CLI أو باستخدام قالب إدارة الموارد. لا يؤدي تعطيل التشفير إلى إزالة الملحق (راجع إزالة ملحق التشفير).

  • تعطيل تشفير القرص باستخدام Azure PowerShell: لتعطيل التشفير، استخدم Disable-AzVMDiskEncryption cmdlet.

    Disable-AzVMDiskEncryption -ResourceGroupName "MyVirtualMachineResourceGroup" -VMName "MySecureVM" -VolumeType "data"
    
  • تعطيل التشفير باستخدام Azure CLI: لتعطيل التشفير، استخدم الأمر تعطيل تشفير az vm.

    az vm encryption disable --name "MySecureVM" --resource-group "MyVirtualMachineResourceGroup" --volume-type "data"
    
  • تعطيل التشفير باستخدام قالب Resource Manager:

    1. انقر فوق نشر إلى Azure من تعطيل تشفير القرص عند تشغيل قالب أجهزة Linux الظاهرية.
    2. حدد الاشتراك ومجموعة الموارد والموقع والجهاز الظاهري ونوع وحدة التخزين والشروط القانونية والاتفاق.
    3. انقر فوق شراء لتعطيل تشفير القرص على جهاز Linux ظاهري قيد التشغيل.

إزالة ملحق التشفير

إذا كنت ترغب في فك تشفير الأقراص الخاصة بك وإزالة ملحق التشفير، فيجب عليك تعطيل التشفير قبل إزالة الملحق؛ انظر تعطيل التشفير.

يمكنك إزالة ملحق التشفير باستخدام Azure PowerShell أو Azure CLI.

  • تعطيل تشفير القرص باستخدام Azure PowerShell: لإزالة التشفير، استخدم الأمر Remove-AzVMDiskEncryptionExtension cmdlet.

    Remove-AzVMDiskEncryptionExtension -ResourceGroupName "MyVirtualMachineResourceGroup" -VMName "MySecureVM"
    
  • تعطيل التشفير باستخدام Azure CLI: لإزالة التشفير، استخدم الأمر az vm extension delete.

    az vm extension delete -g "MyVirtualMachineResourceGroup" --vm-name "MySecureVM" -n "AzureDiskEncryptionForLinux"
    

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