باختصار: لا يوفر إصدار التطوير من Collabora Online (CODE) خيارًا عامًا لإيقاف تشغيل بيانات القياس عن بُعد، والذي يجب على المسؤولين تعطيله لإجراء التحليلات الروتينية. وتؤكد Collabora أن الاستضافة الذاتية لـ Online لا تتطلب بيانات القياس عن بُعد أو استدعاءات التحليلات. أما الأنشطة الصادرة التي تستحق التحكم فهي منفصلة: عمليات التحقق الدورية من التحديثات، والتكاملات الاختيارية، ونقاط نهاية المراقبة، وميزات المستندات التي تجلب البيانات عن بُعد. قم بتعطيل الميزات الاختيارية التي لا تستخدمها، ثم قم بتطبيق قائمة السماح بالبيانات الصادرة مع الحفاظ على اتصال WOPI بخادم التخزين الخاص بك.
ينطبق هذا على البرامج المُستضافة ذاتيًا، مثل تلك المُدمجة مع Nextcloud أو ownCloud. قد يؤدي حظر حركة البيانات الصادرة بالكامل إلى تعطيل تحميل المستندات وحفظها، لأن البرنامج يحتاج إلى الوصول إلى مُضيف WOPI الخاص به. تم التحقق من أسماء الإعدادات أدناه وفقًا لنموذج Collabora الأصلي بتاريخ 6 أكتوبر 2026؛ وقد تختلف التغليفات والإعدادات الافتراضية باختلاف الإصدار.
ما الذي يُعتبر قياسًا عن بُعد أو اتصالًا خارجيًا؟
تشير القياسات عن بُعد عادةً إلى بيانات استخدام المنتج أو بيانات التشخيص المرسلة إلى المورّد. وتؤكد شركة Collabora أن منتجها المُستضاف ذاتيًا عبر الإنترنت لا يتطلب قياسات عن بُعد، أو استدعاءات تحليلية، أو اتصالاً بخدمات خارجية. coolwsd.xmlولا يُظهر النموذج الأولي جامعًا عالميًا للبيانات عن بُعد أو مفتاح "الاتصال بالخادم".
يُظهر النظام فحصًا دوريًا للإصدار: fetch_update_checkالقيمة الافتراضية هي 10 ساعات. اضبطه على " 0إيقاف" لإيقاف هذا الفحص. allow_update_popupيتحكم هذا الخيار في ظهور إشعارات التحديث في المحرر؛ ضبطه على " falseإيقاف" يُخفي الإشعار، لكنه لا يُغني عن تعطيل الفحص نفسه. إذا كان إصدارك يدعم كلا الخيارين، فقم بتعيينهما معًا.
تعتمد بعض الاتصالات الأخرى على الميزات. قد تشمل هذه الاتصالات شاشة خارجية مُهيأة، وخدمات التدقيق الإملائي أو النحوي عن بُعد، وترجمة DeepL، وموفري الذكاء الاصطناعي، وتكوين الخطوط عن بُعد، والبيانات الخارجية المطلوبة من قِبل المستند. يُشير القالب الأصلي إلى أن واجهات برمجة تطبيقات LanguageTool أو Duden عن بُعد مُعطلة افتراضيًا؛ وكذلك DeepL. استخدم الإعدادات المُرفقة مع إصدار CODE الخاص بك عند مراجعة خيارات الذكاء الاصطناعي أو التكامل.
الخطوة الأولى: تحديد الوجهات الأساسية والاختيارية
حدد آلية التحرير قبل تغيير الشبكة. على سبيل المثال، لنفترض أن Nextcloud موجود على عنوان IP cloud.example.comو CODE على عنوان IP office.example.com. يقوم المتصفح بتحميل المحرر من CODE، بينما يتواصل خادم CODE أيضًا مع Nextcloud عبر WOPI لجلب المستند وحفظه. احتفظ بهذا المسار بين الخادمين، والبروتوكول والمنفذ المستخدمين في تثبيتك، وأي خدمات DNS أو بروكسي يتطلبها نشرك.
ثم قم بجرد الخدمات الاختيارية في إعداداتك الفعّالة. ابحث <monitors>عن عناوين المراقبة المُكوّنة بشكل صريح. تحقق من التدقيق الإملائي عن بُعد، وDeepL، والذكاء الاصطناعي، وإعدادات الخطوط عن بُعد، وعناوين URL الخاصة بالإعدادات عن بُعد. احذف نقاط النهاية المخصصة التي لا تُعد جزءًا من سير عمل مُعتمد. إذا كانت هناك حاجة إلى نقطة نهاية، فوثّق اسم المضيف والغرض منها قبل إنشاء استثناء الشبكة المُناسب.
راجع أيضًا هذا الإعداد lok_allow. فهو يتحكم في الخوادم التي يمكن للمستندات المُعدّلة استخدامها كمصادر بيانات خارجية، بما في ذلك عناوين URL المستخدمة للرسومات المُدرجة أو وظائف جداول البيانات WEBSERVICE(). وهو ليس جدار حماية شاملًا. تشير ملاحظات التكوين الأصلية إلى أنه يمكن أيضًا اعتبار خوادم WOPI وPOST المسموح بها مصادر بيانات مسموح بها، لذا احتفظ بهذه السياسة منفصلة عن ضوابط خروج البيانات من الشبكة.
الخطوة الثانية: تعطيل عمليات التحقق من التحديثات الدورية
بالنسبة لحاوية Collabora CODE، اضبط الخيارات من خلال extra_paramsمتغير البيئة الخاص بها. ادمجها مع القيمة الحالية؛ واحتفظ بأي إعدادات حالية لإنهاء TLS أو الخادم الوكيل العكسي أو إعدادات المضيف التي يعتمد عليها تثبيتك. ثبّت علامة صورة CODE معتمدة لبيئتك بدلاً من الاعتماد على latestعلامة متحركة.
services:
collabora:
image: collabora/code:<approved-tag>
environment:
extra_params: >-
--o:fetch_update_check=0
--o:allow_update_popup=false
هذا مثال توضيحي لجزء من Docker Compose، وليس عملية نشر كاملة. احتفظ بقيود النطاق الحالية، وبيانات اعتماد المسؤول، وإعدادات TLS، وتكوين الوكيل. في Kubernetes، يعرض مخطط Helm الأصلي المحتوى collabora.extra_paramsالمخصص ويدعمه coolwsd.xml؛ استخدم ملف القيم والتعليمات الخاصة بإصدار المخطط الذي قمت بتثبيته.
إذا كنت تدير ملف XML مباشرةً، فضع القيم داخل <config>العنصر الرئيسي الخاص به:
<fetch_update_check>0</fetch_update_check>
<allow_update_popup>false</allow_update_popup>
لا تعتمد على التعديل اليدوي داخل حاوية قيد التشغيل إلا إذا كان هذا الملف دائمًا. قد يؤدي إعادة التشغيل أو تحديث الصورة أو نشر التنسيق إلى استبداله. غيّر مصدر التكوين الدائم في Compose أو Helm أو المصدر المُثبّت، ثم أعد إنشاء أو نشر الكود باستخدام الإجراء المعتاد.
الخطوة 3: إيقاف عمليات التكامل غير المستخدمة وتقييد عمليات جلب المستندات
اترك هذا الحقل <monitors>فارغًا إذا كنت لا تستخدم خدمة مراقبة خارجية. يحتوي الملف الأصلي على نموذج مراقبة معلّق؛ المدخل المعلّق هو مثال فقط، وليس اتصالًا نشطًا. احذف مدخلات المراقبة النشطة التي أُضيفت محليًا إذا لم تعد بحاجة إليها.
أبقِ ميزات التدقيق الإملائي والنحوي عن بُعد، وDeepL، ومزود الذكاء الاصطناعي معطلة إلا إذا كان المستخدمون يعتمدون عليها. قد يُرسل التدقيق اللغوي عن بُعد نصًا مُحددًا من المستند إلى الخدمة المُهيأة، لذا فإن تفعيله يُؤثر على الاتصال ومعالجة البيانات. في حال تطلب الأمر دمجًا، اسمح فقط لنقطة النهاية المُعتمدة بالمرور عبر سياسة الخروج.
بالنسبة للمحتوى البعيد المطلوب للمستندات، قم بإزالة المضيفين العامين <lok_allow>واحتفظ فقط بالوجهات التي يحتاجها المستخدمون. لا تقم بإزالة مسار WOPI لتحقيق ذلك، فهو اتصال التخزين المطلوب للتحرير العادي. لاحظ أيضًا أن إدخالات الشبكة الخاصة الواسعة قد تسمح بجلب المستندات من مضيفين داخليين أكثر من اللازم؛ لذا قلّصها حيثما يسمح تصميم شبكتك وإصدار البرنامج بذلك.
الخطوة الرابعة: تطبيق قواعد الاتصال الصادر خارج نطاق الكود
تُعطّل إعدادات التطبيق سلوكيات مُحددة، لكنها لا تضمن عدم قدرة نظام التشغيل أو العملية على فتح أي اتصال آخر. لتعزيز الحماية، طبّق قواعد الاتصال الصادر على جدار حماية المضيف، أو شبكة الحاويات، أو سياسة شبكة Kubernetes، أو جدار حماية خارجي. استخدم خاصية الرفض الافتراضي لـ CODE، ثم اسمح فقط بوجهة WOPI والتبعيات المُعتمدة صراحةً. اسمح لنظام أسماء النطاقات (DNS) عبر خدمة الشبكة التي تستخدمها منصتك.
في المثال أعلاه، قد يُسمح لبرنامج CODE بالوصول cloud.example.comإلى الشبكة والمنفذ المُهيئين لبروتوكول WOPI، بينما تُمنع الوجهات العامة غير ذات الصلة. تجنب الاعتماد على عنوان IP ثابت عندما يكون مضيف التخزين خلف موازن تحميل أو عندما تتغير عناوين IP الخاصة به. تُعد مجموعة الوجهات المُدارة أو وكيل الخروج المُتحكم به أسهل في الإدارة. تأكد من تهيئة أي وكيل بشكل متسق للحاوية.
يجب فصل مسارات الاتصال الواردة عن الصادرة. يجب أن يكون المتصفح قادرًا على الوصول إلى نقطة نهاية CODE المنشورة، وقد يحتاج خادم التخزين إلى الوصول إلى CODE لاكتشاف الجلسات أو مستنداتها. إن سياسة الخروج التي تسمح لـ CODE باستدعاء WOPI لا تُنشئ مسارات الاتصال الواردة هذه. وبالمثل، فإن التغيير lok_allowلا يُعطّل جميع أنواع الاتصالات الصادرة.
الخطوة 5: أعد التشغيل وتحقق من السياسة
أعد تشغيل أو نشر CODE لتحميل الإعدادات الفعّالة. راجع سجلات بدء التشغيل للاطلاع على قيم الإعدادات المحمّلة والتحذيرات المتعلقة بالإعدادات المتجاهلة. ثم افتح مستند اختبار قابلًا للتحرير من خلال التكامل المعتاد للتخزين، وأجرِ تغييرًا، واحفظه، ثم أغلقه، وأعد فتحه. يجب أن يحتفظ المستند بالتغيير.
- راجع سجلات جدار الحماية أو الخادم الوكيل أو سياسة الشبكة أثناء بدء التشغيل والتعديل. يجب السماح بحركة مرور WOPI المتوقعة.
- تأكد من رفض جميع الوجهات الخارجية التي كنت تنوي حظرها. لا يكفي سجل النظام وحده لإثبات حظر جميع المسارات الممكنة.
- بعد انقضاء فترة التحقق من التحديثات السابقة، تحقق مما إذا كان حاوية التعليمات البرمجية قد حاولت البحث عن تحديث. تأكد من عدم ظهور نافذة التحديث المنبثقة إذا كانت معطلة أيضًا.
- اختبر أي ميزات يحتاجها المستخدمون، بما في ذلك الخطوط البعيدة، والترجمة، وأدوات المساعدة اللغوية، وروابط المستندات، والصيغ التي تسترجع البيانات الخارجية. استعد فقط الوجهة المعتمدة المحددة التي تحتاجها الميزة المطلوبة.
إذا تعذّر فتح المستندات أو حفظها، فتحقق أولاً من نظام أسماء النطاقات (DNS) ومسار WOPI بين الخوادم. إذا تعذّر فتح صورة خارجية أو صيغة جدول بيانات فقط، فراجعها lok_allowبشكل منفصل عن سياسة جدار الحماية. الهدف هو حظر مصدر بيانات عام مع استمرار عمل WOPI؛ أما حظر عمليات الحفظ فيعني أن سياسة الوصول الصادرة واسعة النطاق للغاية.
ما الذي يمكن وما الذي لا يمكن أن يضمنه تعطيل هذه الاتصالات
يؤدي تعطيل فحص التحديثات والتكاملات غير المستخدمة إلى تقليل النشاط الصادر المتوقع من CODE. وتوفر سياسة الشبكة التي تمنع الوصول افتراضيًا حدودًا للتنفيذ. ولا تتحكم أيٌّ من هاتين السياستين في حركة المرور المنفصلة من المضيف، أو بيئة تشغيل الحاويات، أو منصة التنسيق، أو الخادم الوكيل العكسي، أو وكيل المراقبة. إذا كان الشرط يشمل الخادم بأكمله، فقم بمراجعة هذه المكونات أيضًا.
قد تتغير الإعدادات الافتراضية بين الإصدارات، وقد تضيف عمليات التكامل إعدادات جديدة. قارن القالب المرفق مع صورتك المثبتة مع القالب الأصلي الحالي قبل النشر، واختبره في بيئة تجريبية. المراجع الأساسية هي قالب تكوين coolwsd.xml الأصلي من Collabora ، وقيم مخطط Helm الرسمي ، وبيانها بشأن عمليات النشر ذاتية الاستضافة والخدمات الخارجية .