الرئيسية
» مسؤول الشبكة
»
كيفية تفعيل التشفير من جانب الخادم في Nextcloud دون التأثير بشكل ملحوظ على الأداء
كيفية تفعيل التشفير من جانب الخادم في Nextcloud دون التأثير بشكل ملحوظ على الأداء
اعتبارًا من أكتوبر 2026، توضح وثائق إدارة Nextcloud 35 المستقرة نقطةً مهمةً بشكلٍ أوضح من العديد من الشروحات القديمة: يهدف التشفير من جانب الخادم (SSE) في المقام الأول إلى حماية الملفات المخزنة على وحدات تخزين خارجية تابعة لجهات خارجية، ويُوفر وضع المفتاح الرئيسي الافتراضي أداءً أفضل وتوافقًا أوسع مع أنظمة المصادقة مقارنةً بمفاتيح المستخدم الفردية. وتشير الوثائق نفسها أيضًا إلى أن الملفات المشفرة تُضيف الآن حوالي 1% فقط من المساحة التخزينية الإضافية، مقارنةً بمساحة تخزينية أكبر بكثير في الإصدارات السابقة لـ Nextcloud 25.
لا يعني ذلك أن التشفير مجاني تمامًا. فكل عملية قراءة وكتابة مشفرة تتطلب معالجة تشفيرية، لذا لا يمكن لأي دليل موثوق أن يضمن انعدام تكلفة وحدة المعالجة المركزية أو زمن الاستجابة على جميع الخوادم. الهدف العملي مختلف: تمكين التشفير بطريقة تتجنب أي تباطؤ ملحوظ للمستخدمين، وتحافظ على ضغط قاعدة البيانات والقفل تحت السيطرة، وتشفر فقط البيانات التي تحتاج إلى التشفير فعليًا.
قبل تغيير أي شيء، تأكد من حالة التشفير الحالية وسجل خط الأساس للمثيل.
ما الذي يحميه تشفير جانب الخادم في Nextcloud؟
يقوم Nextcloud SSE بتشفير محتويات الملفات على الخادم قبل تخزينها. عندما يقوم المستخدم بتنزيل ملف أو فتحه عبر Nextcloud، يقوم الخادم بفك تشفيره قبل تسليمه للمستخدم المُصرَّح له. تبقى مفاتيح التشفير على خادم Nextcloud، ولذلك يُعدّ SSE مفيدًا للغاية عندما تكون بيانات الملف الفعلية موجودة على موفر تخزين خارجي لا تثق به تمامًا.
لا يُخفي تشفير جانب الخادم (SSE) أسماء الملفات أو بنية المجلدات، ولا يحمي الملفات من مسؤول Nextcloud المُخترق أو خادم التطبيقات المُخترق بالكامل. إذا كان الشرط هو عدم قدرة مسؤول الخادم على قراءة الملفات، فإن نموذج التشفير الشامل في Nextcloud هو طبقة الأمان المناسبة. تتوفر المقارنة الرسمية في وثائق تشفير جانب الخادم في Nextcloud .
اختر التكوين الذي يُنتج أقل قدر من العمل غير الضروري
قرار
خيار ذو تكاليف تشغيلية أقل
متى تختار شيئًا آخر؟
الإدارة الرئيسية
المفتاح الرئيسي، وهو الوضع الافتراضي الحالي والموصى به لمعظم عمليات النشر
استخدم مفاتيح المستخدم الفردية فقط عندما يكون هذا التنازل الأمني مطلوبًا تحديدًا وتكون قيود المصادقة/الاسترداد الخاصة به مقبولة
نطاق التخزين
قم بتشفير وحدة التخزين الخارجية مع ترك وحدة التخزين المنزلية المحلية غير مشفرة عندما يكون نموذج التهديد هو المزود الخارجي
قم بتشفير وحدة التخزين المنزلية أيضًا عندما تكون هناك حاجة لحماية البيانات المخزنة على وحدة تخزين Nextcloud المحلية.
نظام قفل خلفي
تأمين الملفات المعاملاتي المدعوم بـ Redis أو Valkey
قد يكون قفل قاعدة البيانات مقبولاً للأنظمة الصغيرة جدًا، ولكنه يضيف حملاً غير ضروري على قاعدة البيانات في ظل حركة مرور كثيفة.
الخطوة 1: قم بعمل نسخة احتياطية من النظام وحدد مستوى الأداء الأساسي
تُعدّ مفاتيح التشفير وسرّ المثيل من أهمّ عناصر استعادة البيانات. توصي Nextcloud صراحةً بعمل نسخة احتياطية من إعدادات المثيل ومفاتيح التشفير قبل تفعيل SSE. قد يؤدي فقدان المفاتيح المطلوبة أو سرّ المثيل إلى استحالة استعادة البيانات المُشفّرة.
قبل إجراء التغيير، قم بتسجيل بيانات أساسية بسيطة باستخدام عبء العمل الذي يهم المستخدمين. قِس بعض عمليات التحميل والتنزيل التمثيلية، وسجّل استخدام وحدة المعالجة المركزية لـ PHP-FPM، وحمل قاعدة البيانات، وزمن استجابة التخزين، ووقت استجابة تطبيق الملفات. لست بحاجة إلى معيار قياس معملي، بل تحتاج إلى اختبار قابل للتكرار قبل وبعد التغيير، يُبيّن لك ما إذا كان التحديث قد غيّر سلوك المستخدم بشكل ملحوظ.
حدد أيضاً ما إذا كنت بحاجة فعلاً إلى تشفير مساحة التخزين المنزلية. إذا كان هدفك هو حماية خدمة S3 أو SMB أو مخزن الكائنات أو أي نظام تخزين خارجي آخر من مزود التخزين، فإن إبقاء مساحة التخزين المنزلية المحلية خارج نطاق التشفير الآمن (SSE) يجنبك القيام بعمليات تشفير لا تضيف قيمة تُذكر لهذا النوع من التهديدات.
الخطوة الثانية: إصلاح التخزين المؤقت وقفل الملفات قبل تفعيل التشفير
يُعدّ هذا أهمّ تحضير للأداء. توصي Nextcloud بالتخزين المؤقت في الذاكرة لتحقيق الأداء الأمثل، وتوصي تحديدًا باستخدام APCu للتخزين المؤقت المحلي، بالإضافة إلى Redis أو نظام خلفي متوافق لقفل الملفات أثناء المعاملات. يُعدّ قفل الملفات أثناء المعاملات ذا أهمية خاصة للملفات المُشفّرة، لأنّ Nextcloud يجب أن يُنسّق تغييرات الملفات بأمان أثناء عمليات التشفير والتخزين.
قم بتكوين ذاكرة التخزين المؤقت المحلية وواجهة خلفية للقفل مدعومة بـ Redis أو Valkey قبل إضافة حمل التشفير.
يستخدم التكوين الشائع للخادم الواحد APCu للتخزين المؤقت المحلي و Redis للأقفال:
إذا كان Redis يعمل على نفس الخادم، توصي وثائق Nextcloud الخاصة بقفل الملفات باستخدام مقبس Unix كلما أمكن ذلك. كما توضح وثائق Nextcloud 35 الأحدث خيار KeyValueCache المدمج للخوادم المتوافقة مع Redis أو Valkey، والذي يوفر قفلًا للمعاملات دون الحاجة إلى إضافة phpredis PHP. استخدم الإعدادات التي تناسب بيئة النشر الخاصة بك بدلًا من نسخ نموذج دون تدقيق.
يجب تفعيل PHP OPcache وتحديد حجمه بحيث لا يقوم بإخراج التعليمات البرمجية المُجمّعة بشكل متكرر. يشير دليل ضبط خادم Nextcloud إلى أن OPcache يُحسّن أداء تطبيقات PHP، ويُنبّه المسؤولين عند تجاوز حدود الاستخدام المُكوّنة 90%. يُرجى مراجعة دليل التخزين المؤقت للذاكرة الرسمي ، ودليل قفل الملفات للمعاملات ، ودليل ضبط الخادم قبل بدء التشغيل.
الخطوة 3: قم بتمكين وحدة التشفير الافتراضية واستخدم وضع المفتاح الرئيسي
في معظم عمليات النشر الحالية، يُعدّ وضع المفتاح الرئيسي الخيار الأمثل كنقطة بداية. يُوثّق Nextcloud 35 هذا الوضع كإعداد افتراضي، ويوصي به لمعظم عمليات النشر، ويشير إلى أنه يُوفّر أداءً أفضل وتوافقًا مع عدد أكبر من طرق تسجيل الدخول. لكنّ المقابل واضح: إذ يُمكن للمسؤولين الذين يتحكّمون بالخادم فكّ تشفير ملفات المستخدمين. إذا كان هذا غير مقبول، فإنّ استخدام التشفير الموحّد للأمن (SSE) مع مفتاح رئيسي يُشكّل حدًّا أمنيًّا غير مناسب.
استخدم وضع المفتاح الرئيسي الافتراضي ما لم تبرر متطلبات الأمان الخاصة بك تحديدًا استخدام مفاتيح لكل مستخدم.
في واجهة الويب، افتح قسم التشفير من جانب الخادم في إعدادات المسؤول، وفعّل التشفير من جانب الخادم، ثم فعّل وحدة التشفير الافتراضية لـ Nextcloud من التطبيقات إذا أبلغ Nextcloud بعدم تحميل أي وحدة تشفير. ارجع إلى إعدادات التشفير وتأكد من تحديد الوحدة. سجّل الخروج ثم سجّل الدخول مرة أخرى لتهيئة مفاتيح التشفير.
يمكنك أيضًا إدارة التشفير باستخدام الأمر التالي occ. يوضح دليل الأوامر الحالي التسلسل التالي:
إذا كان الغرض من التشفير المتماثل (SSE) هو التخزين الخارجي فقط، فقم بإلغاء خيار تشفير التخزين المنزلي قبل البدء بتطبيقه على نطاق أوسع. هذا الخيار من شأنه أن يقلل بشكل كبير من كمية البيانات التي يجب أن تمر عبر طبقة التشفير.
الخطوة الرابعة: تشفير وحدات التخزين الخارجية المقصودة والتحقق منها باستخدام بيانات حقيقية
يتم ضبط تشفير وحدة التخزين الخارجية لكل وحدة تخزين مُثبّتة. فعّل التشفير فقط لوحدات التخزين التي تتطلبه، ثم ارفع ملفًا نموذجيًا عبر Nextcloud وقم بتنزيله مرة أخرى. تحقق من الوصول عبر نفس طريقة الوصول التي يستخدمها المستخدمون فعليًا، سواءً عبر سطح المكتب أو الهاتف المحمول أو WebDAV أو المتصفح.
قم بتمكين التشفير على وحدات التخزين الخارجية الموجودة داخل نموذج التهديد الخاص بك بدلاً من تشفير كل شيء تلقائيًا.
بعد إجراء الاختبار الوظيفي، أعد قياسات خط الأساس من الخطوة 1. قارن وقت التحميل، ووقت التنزيل، واستخدام وحدة المعالجة المركزية، ونشاط قاعدة البيانات، وزمن استجابة التخزين. إذا كان التغيير طفيفًا وكان وقت الاستجابة المرئي للمستخدم مستقرًا، فإن الخادم لديه هامش أمان كافٍ. أما إذا انخفض الأداء بشكل حاد، فلا تفترض أن التشفير هو السبب الوحيد. تحقق أولًا من وجود قفل ملفات في قاعدة البيانات، أو تشبع في عمليات PHP-FPM، أو بطء في التخزين الخارجي، أو عدم كفاية ذاكرة التخزين المؤقت OPcache، أو مشكلة في اتصال Redis.
إذا كنت بحاجة إلى تشفير ملفات موجودة مسبقًا قبل تفعيل التشفير الموحد (SSE)، يوفر Nextcloud هذه الميزة encryption:encrypt-all. تعامل مع هذه العملية كعملية ترحيل، وليست طلبًا تفاعليًا عاديًا. قد تؤثر هذه العملية على كمية كبيرة من البيانات، لذا يُنصح بجدولتها خلال فترة الصيانة والتأكد من سلامة خطة النسخ الاحتياطي والاستعادة. تجدون أوامر التشفير المتاحة موثقة في مرجع التشفير الرسمي لـ OCC .
كيف تعرف ما إذا كان طرح المنتج صحيًا
لم يلاحظ المستخدمون زيادة ملحوظة في وقت التحميل أو التنزيل. قارن أحجام الملفات نفسها مع العملاء قبل التغيير وبعده.
يظل حمل قاعدة البيانات مستقرًا. قد يشير الارتفاع الكبير في نشاط قاعدة البيانات إلى أن عملية قفل الملفات لا تزال تستخدم قاعدة البيانات بدلاً من Redis أو Valkey.
لا تعاني عمليات PHP من نقص في موارد المعالج. بل إن التشفير يزيد من عبء المعالجة، لذا فإن العمليات التي كانت تعمل بالفعل بكامل طاقتها تقريبًا تحتاج إلى مساحة أكبر.
لا يزال زمن استجابة التخزين الخارجي هو العامل المهيمن عند الاقتضاء. ويمكن أن تتجاوز سرعة التخزين البطيئة عبر S3 أو SMB أو التخزين عن بُعد تكلفة التشفير بسهولة.
لا تظهر أي تحذيرات متعلقة بالتشفير أو المفاتيح في نظرة عامة على المسؤول أو في السجلات. قم بحل التحذيرات قبل توسيع نطاق النشر.
أخطاء شائعة تتسبب في تباطؤ يمكن تجنبه
تشفير وحدة التخزين المنزلية المحلية عندما تكون وحدة التخزين الخارجية فقط هي التي تحتاج إلى الحماية
يؤدي هذا إلى زيادة حجم عمليات الإدخال/الإخراج المشفرة دون معالجة تهديد حقيقي بالضرورة. لذا، يجب أن يتناسب نطاق التشفير مع سبب تفعيل التشفير المشفر الموحد (SSE).
ترك أقفال المعاملات في قاعدة البيانات
تشير وثائق Nextcloud إلى أن نظام قفل قاعدة البيانات الافتراضي يُحمّل قاعدة البيانات عبئًا كبيرًا. ويُعدّ استخدام ذاكرة تخزين مؤقتة للقفل مدعومة بـ Redis أو Valkey أحد أكثر الطرق فعاليةً لإزالة هذا العبء.
تشغيل التشفير الجماعي خلال ساعات الذروة
تتنافس حركة البيانات التفاعلية وعملية تشفير البيانات الكاملة على موارد وحدة المعالجة المركزية، وعمليات الإدخال/الإخراج، وعمال PHP، وعرض نطاق التخزين. يجب فصل عملية الترحيل عن حركة بيانات الإنتاج العادية.
اعتبار SSE بمثابة حماية من خادم Nextcloud المخترق
تتوفر مفاتيح SSE للخادم، لذا يبقى المسؤول الخبيث أو الخادم المخترق بالكامل ضمن نطاق الأمان. استخدم التشفير التام بين الطرفين عندما يكون هذا هو التهديد الذي تحتاج إلى معالجته.
خلاصة القول
إنّ الطريقة الأكثر أمانًا لتفعيل تشفير جانب الخادم في Nextcloud دون التأثير بشكل ملحوظ على الأداء هي حصر نطاق التشفير، واستخدام المفتاح الرئيسي الافتراضي عندما يكون نموذج الثقة الخاص به مناسبًا، وتكوين APCu وRedis أو قفل Valkey أولًا، ثم قياس أداء عبء العمل الفعلي قبل التغيير وبعده. يدعم دليل Nextcloud 35 الحالي هذا النهج: فوضع المفتاح الرئيسي هو الوضع الافتراضي الأمثل للأداء، والتخزين الخارجي هو الاستخدام الرئيسي لتشفير جانب الخادم، وتبلغ الزيادة في حجم الملفات المشفرة حاليًا حوالي 1%.