نسخ الحاوية احتياطيًا أم ملفاتها؟ القرار بحسب شكل الاستعادة
النسخ الاحتياطي للصورة وللملفات يستعيدان أشياء مختلفة ويعتمدان على مفاتيح مختلفة. طابِق الكائن المحفوظ مع الاستعادة التي تحتاجها فعلاً.
يمكنك نسخ حاوية مشفّرة احتياطيًا ككائن واحد، أو تركيبها ونسخ الملفات التي بداخلها. كلاهما يعبر الـ VPN بسهولة، وهنا ينتهي التشابه. فهما يستعيدان أشياء مختلفة، ويعتمدان على مفاتيح مختلفة، ويكلّفان مساحات تخزين مختلفة، ويفشلان بطرق مختلفة عندما يحتاج أحدهم إلى استرجاع البيانات. اختر كائن الاستعادة أولاً، ثم النقل، ثم تشفير النسخة المحفوظة. والقائمة أدناه تسير بهذا الترتيب، لأن كل خلاف حول النسخ الاحتياطي تقريبًا هو في الحقيقة خلاف على أي من الثلاثة حُسم أولاً.
كائنان، شكلان للاستعادة
النسخ الاحتياطي على شكل صورة يستعيد حاوية: تحصل على الحجم المشفّر من جديد، وما زلت بحاجة إلى مادة الاستعادة لفتحه. والنسخ على مستوى الملفات يستعيد الملفات وأشجار المجلدات، وأي تشفير يحميها هو خاصية لمستودع النسخ الاحتياطي لا للحاوية الأصلية. أما النسخ العادي إلى مجلد بعيد فهو حالة ثالثة، ويَرِث ما يصادف أن يكون لدى ذلك المجلد من حماية.
| Object | What a restore gives you | Where the encryption question lands |
|---|---|---|
| Encrypted container image | The volume, still locked | The container format and its recovery key material |
| Mounted files into a backup tool | Selected files and metadata | The backup repositorys own keys and design |
| Plain copy to a remote folder | Whatever the copy process kept | Whatever protects that storage afterwards |
الصف الأوسط هو الذي يسيء الناس قراءته. ويمكن أن يكون تصميمًا سليمًا تمامًا: يقرأ برنامج النسخ النص الواضح محليًا ويكتب مستودعًا مشفّرًا موثّقًا. عندئذٍ تقوم أمنيته على ذلك البرنامج وبيانات اعتماده، لا على كلمة مرور الحاوية الأصلية، ولا ينبغي وصف الاثنين كأنهما الضابط نفسه.
الفحص 1: ما الذي يجب أن تعيد الاستعادة بناءه؟
اطرح السؤال بصيغة استعادة، لا بصيغة نسخ احتياطي. إذا كان الشرط هو “إعادة هذه الخدمة على مضيف آخر”، فالصورة مع مادة استعادتها جواب متسق. وإذا كان الشرط هو “استرجاع جدول البيانات المالي لشهر مارس”، فإن استعادة صورة بحجم عدة غيغابايت لاستخراج ملف واحد طريقة مكلفة للجواب. والاثنان استعادتان مشروعتان، وليستا ميزانيتين قابلتين للتبادل. وأي خطة تذكر واحدة فقط منهما ستُختبر في النهاية بالأخرى.
اكتب هدف الاستعادة في الخطة: الحجم بأكمله، أو شجرة مجلدات، أو ملفات فردية. ثم سجّل البيانات الوصفية التي يجب أن تنتقل معها، لأن الملكية والأذونات والسمات الموسّعة والطوابع الزمنية جزء من استعادة على مستوى الملفات، وكثيرًا ما تُفقد في مسارات العمل القائمة على النسخ التي بدت كافية أثناء الاختبار.
حدّد أيضًا من ينفّذ الاستعادة. مستودع على مستوى الملفات يستطيع أي مشغّل تركيبه هو نموذج وصول مختلف عن صورة تتطلّب حضور صاحب المفتاح، وليس أي منهما أفضل تلقائيًا. المهم أن يكون الاختيار متعمّدًا ومكتوبًا.
الفحص 2: ما الذي يحمي النسخة المحفوظة؟
الـ VPN يحمي مقطع نقل. ولا يقول شيئًا عن النسخة المحفوظة بعد انتهاء النقل، و“لقد مرّ عبر النفق” ليست عبارة عن قدرة مشغّل النسخ الاحتياطي على قراءة بياناتك. وإذا كان الطرف البعيد يديره شخص آخر، فالسؤال هو ما يستطيعون قراءته، لا هل كان الرابط مشفّرًا.
بالنسبة للصورة، يعني ذلك حماية مادة مفتاح الحاوية بشكل منفصل عن الصورة نفسها. فقدان الترويسة يعني فقدان الحجم، فانسخ الترويسة احتياطيًا في مكان لا توجد فيه الصورة:
cryptsetup luksHeaderBackup /dev/vg0/data --header-backup-file data-header.img
cryptsetup luksDump /dev/vg0/data | head -20
أما بالنسبة لمستودع على مستوى الملفات، فتحقّق من أن الأداة تشفّر المحتوى والبيانات الوصفية وتوثّقهما قبل أن يغادرا المضيف، واعرف من يحمل المفاتيح. أما توثيق التصميم في Restic فصريح في أنه يفترض مضيف مصدرًا موثوقًا وأن التشفير لا يمنع من لديه وصول إلى التخزين من حذف النسخ الاحتياطية. والتحفّظان مهمّان: يمكن أن يكون المستودع سريًا ومع ذلك يُدمَّر.
الفحص 3: هل النسخة متسقة؟
النسخ الاحتياطي الذي يلتقط نظام ملفات يتغيّر هو نسخة، لا نقطة استعادة. وبالنسبة للصورة، استخدم الطريقة المدعومة في أداة الحجم للحصول على لقطة مستقرة، وهي تعني عادةً عملية لقطة أو فك تركيب بدلًا من قراءة ملف كبير أثناء تغيّره:
lvcreate -L 5G -s -n data-snap /dev/vg0/data
cryptsetup open /dev/vg0/data-snap data-snap --readonly
أما الملفات المركّبة، فاستخدم إجراء الاتساق المدعوم في التطبيق لقواعد البيانات الحيّة وغيرها من البيانات المنسّقة. النسخة على مستوى نظام الملفات ونقطة الاستعادة المتسقة مع التطبيق وصفان مختلفان، ولا يظهر الفرق إلا عندما تحاول تشغيل التطبيق من النسخة المستعادة.
أبقِ مادة الاستعادة على مسار محمي مستقل. وفقدان الجهاز الأصلي يجب ألا يفقدك أيضًا بيانات الاعتماد الوحيدة التي تفتح نسخته الاحتياطية، وهذا بالضبط ما يحدث عندما يعيش ملف المفتاح على الحجم الذي تجري نسخه. اختبر هذا الفصل عن قصد: استعِد على مضيف لم يرَ الأصل قط، باستخدام ما تقول الخطة إنه متاح فقط.
الفحص 4: هل يصمد كشف التغييرات لهذا الكائن؟
تبدو الحاوية المشفّرة لأدوات النقل معظمها ملفًا واحدًا كبيرًا معتمًا، لذا قد تؤدي تعديلات صغيرة في النص الواضح إلى إعادة قراءة كبيرة أو رفع كامل من جديد بحسب الأداة والصيغة. وتقسيم البيانات بمقاطع متغيّرة الحجم وإزالة التكرار، كما يوثّق restic، يمكن أن يقلّلا ذلك، لكنهما خاصية لتلك الأداة لا للحاويات المشفّرة عمومًا.
قِس بدلًا من أن تفترض. قارن تشغيلًا أول بتشغيل ثانٍ بعد تغيير صغير غير مؤذٍ، وسجّل البايتات المنقولة وكذلك الزمن المنقضي. واحتفظ بنسخة سليمة معروفة أثناء التجربة، حتى لا يستهلك اختبار نقطة استعادتك الوحيدة.
ثم أنهِ القائمة بالاختبار الوحيد الذي يهم: استعادة بدون الجهاز الأصلي. افتح حاوية مستعادة، أو استعِد ملفات مختارة مع بياناتها الوصفية، وتأكد من أن التطبيق أو المستخدم يستطيع استخدام النتيجة. فأي نقل سريع ومشفّر جيدًا لا يجتاز هذا الاختبار هو نسخة من بياناتك، لا نسخة احتياطية منها.