حماية مستندات Collabora CODE المخزنة باستخدام تشفير التخزين
تأمين الملفات التي تم تحريرها في Collabora CODE عن طريق تشفير طبقة التخزين، وحماية البيانات المؤقتة، والتحقق من التشفير والاسترداد.
لتشفير المستندات المخزنة عند استخدام Collabora Online Development Edition (CODE)، فعّل التشفير في منصة تخزين الملفات أو على القرص الأساسي، وليس في محرر CODE. يفتح Collabora المستندات المُقدمة من مضيف تخزين WOPI، بينما يتحمل المضيف مسؤولية حماية النسخ المحفوظة. والنتيجة هي تخزين مُشفّر، وإمكانية تعديل الملفات، واستعادة الملفات.
يستخدم النشر النموذجي Nextcloud أو خدمة أخرى متوافقة مع WOPI لتخزين الملفات، وCODE للتحرير عبر المتصفح. ينتقل المستند بين هذين المكونين خلال جلسة تحرير مُصرّح بها؛ ويؤدي تفعيل HTTPS إلى حماية هذا الاتصال، ولكنه لا يُشفّر النسخة المخزنة. يُشير ملخص أمان Collabora إلى أن التخزين مُتحكّم به من خلال التكامل، بينما يُوثّق نموذج تكوين الخادم الخاص بها إعدادات WOPI وTLS، بالإضافة إلى إعدادات التخزين المؤقت والحجر الصحي الاختيارية.
قبل إجراء أي تغييرات، سجّل مكان كتابة ملفات المستندات على خادم WOPI، وما إذا كان يستخدم أقراصًا محلية أو وحدة تخزين خارجية، ومكان تشغيل برنامج CODE نفسه. سجّل النسخ الاحتياطية، واللقطات، والمعاينات، ومساحة التبادل، ووحدات تخزين الحاويات: قد تبقى النسخ خارج الدليل الرئيسي غير محمية.
بالنسبة للمستندات الموجودة على القرص المحلي لخادم لينكس، يُعد تشفير القرص أو وحدة التخزين، مثل LUKS، الخيار الأمثل عادةً. فهو يحمي البيانات المخزنة عند قفل وحدة التخزين، بما في ذلك حمايتها من السرقة حتى في حال إيقاف تشغيل القرص. تُشير وثائق تشفير القرص الكامل في أوبونتو إلى أن LUKS هو تشفير على مستوى الكتل، وليس إعدادًا خاصًا بالتطبيقات. يُنصح باستخدام وحدة تخزين مُشفرة جديدة أو عملية ترحيل مُختبرة، حيث أن تهيئة LUKS قد تُؤدي إلى فقدان البيانات الموجودة.
إذا كان Nextcloud يخزن الملفات على وحدة تخزين خارجية، وكان من الضروري ألا يتمكن مزود التخزين من قراءة محتوياتها، فقد يكون تشفير Nextcloud من جانب الخادم (SSE) خيارًا أفضل. فهو يشفر محتويات الملفات المدعومة قبل حفظها في وحدة التخزين الخلفية. وتبقى مفاتيح التشفير في Nextcloud، مما يسمح للخادم المخترق أو المسؤول بالوصول إلى الملفات التي تم فك تشفيرها. وينصح Nextcloud بالنظر في تشفير القرص للتخزين المحلي.
إذا كان لا بدّ من منع حتى مسؤول التطبيق من قراءة المستند، فإن تشفير القرص غير المقفل ولا التشفير الموحد القياسي (SSE) يفي بهذا الشرط. قيّم آلية تشفير مدعومة من جانب العميل أو من طرف إلى طرف، وتأكد من إمكانية التحرير عبر المتصفح؛ ولا تفترض إمكانية فتح كل مستند مشفر بشكل تعاوني في بيئة التطوير.
في حالة نشر نظام لينكس جديد، قم بتوفير بيانات الملفات ووحدات التخزين الخدمية ذات الصلة على وحدة تخزين مشفرة قبل استيراد المستندات. احتفظ بمعلومات فك التشفير ومعلومات الاسترداد خارج الخادم، وقيد الوصول الإداري، واختبر عملية إعادة التشغيل أو فك التشفير. بالنسبة للأنظمة الحالية، تحقق من النسخ الاحتياطية وقم بالترحيل أثناء فترة التوقف. قم بتكوين التشفير لوحدات التخزين السحابية أو تخزين الكائنات مع مزود الخدمة.
يُستخدم هذا lsblk -fلتحديد أنواع أجهزة التخزين الكتلية findmnt -T /path/to/document/dataوتحديد نظام الملفات الذي يدعم دليل بياناتك الفعلي. تحقق من المسار من دليل البيانات إلى الجهاز المُشفّر: فالتثبيت cryptsetupوحده لا يُشفّر نظام الملفات.
عند استخدام تشفير Nextcloud SSE، اتبع دليل التشفير من جانب الخادم . قم بعمل نسخة احتياطية من إعدادات Nextcloud وقاعدة البيانات والملفات ومفاتيح التشفير قبل إجراء أي تغييرات. حدد نمط المفتاح قبل تشفير المحتوى؛ يشير الدليل الحالي إلى أن المفتاح الرئيسي الذي يتحكم فيه الخادم هو الوضع الافتراضي لمعظم عمليات النشر.
occالأوامر الموثقة.sudo -E -u www-data php occ app:enable encryption، ثم sudo -E -u www-data php occ encryption:enable. عدّل اسم المستخدم وطريقة التنفيذ بما يتناسب مع حزمة البرامج الخاصة بك؛ تستخدم عمليات نشر Docker الأوامر داخل الحاوية المناسبة.sudo -E -u www-data php occ encryption:statusللتأكد من الميزة والوحدة النمطية المحددة. لا تعتبر علامة التفعيل دليلاً على أن جميع الملفات الموجودة مسبقًا مشفرة.sudo -E -u www-data php occ encryption:encrypt-allلمعالجة الملفات الموجودة مسبقًا. قد تستغرق هذه العملية وقتًا، ويشير مرجع أوامر التشفير الرسمي إلى أنها تُدير وضع الصيانة وتتطلب طرفية تفاعلية.يستثني التشفير الموحد (SSE) أسماء الملفات والمجلدات وملفات المهملات الموجودة وبعض الإصدارات القديمة والصور المصغرة والمعاينات وفهارس البحث وبيانات تطبيقات معينة. احمِ العناصر المستثناة بشكل منفصل إذا لزم الأمر. احمِ نسخًا احتياطية من مفاتيح التشفير؛ فقد يؤدي فقدان المفاتيح الأساسية أو أسرار النظام إلى منع الاستعادة بشكل دائم.
حتى عندما يقوم مضيف WOPI بتشفير المستندات المخزنة، قيّم جهاز CODE بشكل مستقل. يصف Collabora معالجة المستندات النشطة بأنها موجهة نحو الذاكرة، ولا يعتبر CODE مستودع المستندات الدائم. مع ذلك، coolwsd.xmlيتضمن القالب المنشور إعدادات للحجر الصحي الاختياري والملفات المخزنة مؤقتًا، لذا افحص عملية النشر الفعلية بدلًا من افتراض غياب جميع الملفات المؤقتة. غطِّ مساحة تخزين وقت تشغيل الحاوية، ووحدات التخزين المُثبَّتة، ومساحة تبديل النظام، وملفات تفريغ الأعطال، والنسخ الاحتياطية بضوابط تشفير أو احتفاظ مناسبة.
حافظ على استخدام بروتوكول HTTPS بين المتصفحات، وبرنامج CODE، وخدمة WOPI، وقيّد خوادم WOPI المسموح لها بالاتصال. توصي وثائق تكوين Office الخاصة بـ Nextcloud بتقييد طلبات WOPI بعناوين IP لخوادم Collabora المتوقعة. لا تُغني ضوابط الوصول هذه عن تشفير البيانات المخزنة، ولكنها تُساعد في منع نظام التخزين المُشفّر من تسليم نص عادي إلى مُحرر غير مُصرّح له.
لا تُفعّل وضع تخزين نظام الملفات المحلي في Collabora للإنتاج كحلٍّ سريع؛ إذ يصف SDK الرسمي الخاص بها تخزين نظام الملفات كخيارٍ للاختبار فقط، ويوصي باستخدام WOPI. حافظ على تكامل التخزين العادي لضمان اتساق سلوك المصادقة والحفظ.
استخدم ملفًا تجريبيًا غير حساس لاختبار القبول. ارفعه عبر خدمة التخزين، وافتحه في برنامج CODE، وعدّل سطرًا منه، ثم احفظه، وأغلق المحرر، وأعد فتحه. يؤكد نجاح عملية الإرسال والاستقبال أن التعديل لا يزال يعمل؛ لكنه لا يثبت تشفير البيانات المخزنة.
encryption:encrypt-allاكتمالها بنجاح؛ لا تختبر ملفًا تم تحميله حديثًا فقط.يجب تغيير أساليب التشفير إذا كان من الضروري أن يكون مزود التخزين أو التطبيق غير قادر على فك تشفير المحتويات، أو إذا بقيت فئة بيانات محمية خارج نطاق التشفير، أو إذا تعذر إثبات استعادة المفتاح. يحد التشفير في حالة السكون بشكل أساسي من مخاطر فقدان البيانات المخزنة وقراءات النظام الخلفي غير المصرح بها؛ ولكنه لا يستطيع بمفرده منع خادم نشط مخترق، أو مستخدم مصرح له بتنزيل ملف، أو حساب مسروق من قراءة مستند مفتوح.
تأمين الملفات التي تم تحريرها في Collabora CODE عن طريق تشفير طبقة التخزين، وحماية البيانات المؤقتة، والتحقق من التشفير والاسترداد.
تحقق من بنية جهازك المضيف، وتأكد من أن علامة CODE تنشر ARM64، وقم بإزالة إعدادات AMD64 الإجبارية، وافصل أخطاء الصورة عن مشكلات الأذونات أو الذاكرة.
قم بإعداد اتصال WOPI بين Collabora Online و ownCloud Infinite Scale، وقم بتكوين عناوين URL الصحيحة للخدمة، وتحقق من حفظ تعديلات المستند.
منع تصدير المستندات في Collabora Online CODE عن طريق تعيين إذن WOPI DisableExport، ثم التحقق من أن المضيف والمحرر يفرضان ذلك.
قم بتكوين إنهاء Nginx TLS، ومسارات Collabora، ورؤوس WebSocket، ثم اختبر نقاط النهاية العامة قبل فتح المستندات الحقيقية.
تتبع انقطاع اتصال CODE لمدة 10 دقائق إلى الوكيل أو موازن التحميل أو مسار WebSocket، ثم قم بتصحيح المهلة الزمنية وتحقق من بقاء الجلسة متصلة.
قم بتثبيت مخطط Collabora Helm الرسمي، وقم بتكوين الوصول إلى WOPI وتقارب الدخول، وتحقق من النشر دون أخطاء الإعداد الشائعة.
استخدم طلبات المتصفح وسجلات WOPI وفحوصات البروكسي المستهدفة لمعرفة سبب فتح Collabora لمستند فارغ - واختر حلاً يتناسب مع الأدلة.
قم بتكوين قواميس CODE Docker ووضع علامات على مقاطع المستندات بشكل صحيح حتى تتلقى اللغات الإنجليزية والفرنسية واللغات الأخرى المدعومة التدقيق الإملائي الصحيح.
قم بضبط عتبة عدم النشاط لكل عرض في coolwsd وميزها عن تعتيم علامات التبويب الخلفية، وإلغاء تحميل المستندات، والحفظ التلقائي، وانتهاء صلاحية تسجيل الدخول.