حلّ المجتمع

ثبّت Apache Guacamole على CasaOS أو ZimaOS بأمان

A 2023 CasaOS tutorial introduced Apache Guacamole through BigBearCasaOS as a browser gateway for VNC, RDP and SSH.

الخلاصة: Guacamole الحديث خدمة مكوّنة من ثلاثة أجزاء، وليس مجرد حاوية ويب واحدة

يوفّر Apache Guacamole وصولًا قائمًا على المتصفح إلى RDP وVNC وSSH من دون الحاجة إلى عميل سطح مكتب. عادةً ما يتضمن نشر Docker بأسلوب الإنتاج تطبيق Guacamole للويب، وguacd، وقاعدة بيانات مثل PostgreSQL أو MySQL/MariaDB. ينبغي التعامل مع حزمة BigBearCasaOS القديمة لعام 2023 باعتبارها حلًا تاريخيًا ميسّرًا، لا مرجعًا للبنية المعمارية.

استخدم حاويات Guacamole الرسمية

ينشر مشروع Apache صور guacamole/guacamole وguacamole/guacd المدعومة. يوضّح مكدس Guacamole لـ Docker التخطيط الرسمي. كما تشرح أنماط تثبيت Guacamole الأوسع سبب تفضيل مصادقة قاعدة البيانات في عمليات النشر الفعلية.

التخطيط الموصى به للحاويات

guacamole-web
    |
    +-- guacd
    |
    +-- postgres or mariadb

أبقِ الخدمات الثلاث جميعها على شبكة Docker خاصة. انشر نقطة وصول Guacamole على الويب فقط. لا تنشر قاعدة البيانات أو guacd على الشبكة المحلية إلا إذا كان مكوّن آخر يحتاج إليهما فعلًا.

هيّئ قاعدة البيانات قبل تسجيل الدخول لأول مرة

تحتاج إضافة مصادقة قاعدة البيانات في Guacamole إلى تحميل مخططها قبل أن يتمكن تطبيق الويب من تخزين المستخدمين والاتصالات. استخدم ملفات تهيئة SQL المطابقة للإصدار الدقيق من Guacamole ونوع قاعدة البيانات. حافظ على استمرار مجلد بيانات قاعدة البيانات.

ضع HTTPS أمامه قبل إتاحته عن بُعد

قد ينقل Guacamole كلمات مرور المسؤولين وجلسات سطح المكتب البعيد، لذا فإن إتاحته عبر HTTP العادي يمثل حدًا أمنيًا ضعيفًا. استخدم وكيلًا عكسيًا مع HTTPS ومصادقة قوية. يوفّر الوكيل العكسي عبر HTTPS في ZimaOS نمط الوكيل العكسي في ZimaOS.

استخدم MFA أو SSO عندما يكون Guacamole متاحًا عبر الإنترنت

يدعم Apache Guacamole إضافات لـ TOTP وOpenID Connect وSAML وأنظمة مصادقة أخرى. يُعد الوصول إلى سطح المكتب البعيد وظيفة إدارية؛ لذا احمه وفقًا لذلك بدلًا من الاعتماد على كلمة مرور محلية قصيرة فقط.

متى تشغّل Guacamole داخل جهاز افتراضي بدلًا من ذلك؟

إذا أردت عزل Guacamole عن محرك Docker في NAS، أو كانت لديك عدة خدمات للبنية التحتية، فإن جهازًا افتراضيًا صغيرًا يعمل بنظام Debian أو Ubuntu يمنحك حدًا واضحًا للتحديثات وجدار الحماية. تغطي متطلبات الأجهزة للأجهزة الافتراضية في ZimaOS موارد المضيف اللازمة لهذا الفصل.

تساعدك متطلبات تطبيقات ZimaOS عندما يتشارك Guacamole جهاز NAS مع قواعد البيانات وخوادم الوسائط والمراقبة.

احفظ قاعدة البيانات وإعدادات Guacamole بشكل منفصل

لا تتعامل مع حاوية الويب باعتبارها الجزء الذي يحتفظ بحالة Guacamole. فحسابات المستخدمين والاتصالات المحفوظة وبيانات المصادقة موجودة في قاعدة البيانات، بينما قد تكون الإضافات والإعدادات المخصصة موجودة في مجلدات موصولة. انسخ هذه المكوّنات الدائمة احتياطيًا قبل استبدال الصور. ينبغي أن يكون سحب حاوية نظيفة إجراءً روتينيًا؛ أما إعادة بناء كل اتصال بعيد من الذاكرة فلا ينبغي أن تكون كذلك.

اضبط WebSockets بشكل صحيح عبر الوكيل العكسي

يستخدم Guacamole اتصالات طويلة الأمد في المتصفح ودعم WebSocket للجلسات التفاعلية. إذا نجح تسجيل الدخول لكن انقطعت أسطح المكتب البعيدة أو تجمدت أو تراجعت أداؤها خلف وكيل، فتحقق من تمرير WebSocket والمهلات الزمنية للوكيل قبل إلقاء اللوم على RDP أو VNC نفسه. حافظ على ثبات مسار Guacamole أو اسم المضيف حتى لا يتغير سلوك الاستدعاءات وجلسات المتصفح مع كل تحديث.

افصل وصول Guacamole عن بيانات اعتماد الأنظمة المستهدفة

يتحكم تسجيل الدخول إلى Guacamole في الدخول إلى البوابة؛ أما نظام Windows أو Linux المستهدف فلا يزال لديه بيانات اعتماد وسياسات RDP أو VNC أو SSH الخاصة به. تجنب إعادة استخدام كلمة مرور مسؤول واحدة في كل مكان. وللوصول المشترك داخل المنزل أو الفريق، أنشئ مستخدمي Guacamole بأسماء محددة وامنح كل شخص الاتصالات التي يحتاج إليها فقط.

اختبر البوابة قبل إتاحتها

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

الأسئلة الشائعة

هل يحتاج Guacamole إلى عميل سطح مكتب؟

لا. يتصل المستخدمون عبر متصفح ويب، بينما يترجم Guacamole حركة مرور المتصفح إلى جلسات RDP أو VNC أو SSH.

هل يحتاج Guacamole إلى قاعدة بيانات؟

نعم، لإدارة المستخدمين والاتصالات بأسلوب مناسب للإنتاج. أما طريقة المصادقة البسيطة باستخدام XML فهي مناسبة أساسًا للاختبار الأساسي.

هل ينبغي أن أتيح guacd عبر الإنترنت؟

لا. أبقِ guacd خاصًا خلف تطبيق Guacamole للويب.

هل يمكن أن يحل Guacamole محل VPN؟

يمكنه توفير وصول عبر المتصفح إلى أسطح المكتب البعيدة المُعدّة، لكنه ليس نفقًا عامًا لشبكة خاصة لكل خدمة.

هل يمكنني استخدام MariaDB بدلًا من PostgreSQL؟

نعم، تتضمن خيارات مصادقة قواعد البيانات المدعومة قواعد بيانات متوافقة مع MySQL وPostgreSQL عند إعدادها باستخدام الإضافة والمخطط المقابلين.