خادم Linux لا شاشة له، وفي معظم الأحيان لا يحتاج إليها. لكنه يحتاجها أحياناً: متصفح يجب أن يعمل من عنوان الخادم نفسه، أو أداة ليس لها إلا واجهة رسومية، أو سطح مكتب تتركه يعمل وتعود إليه من أي حاسوب. يضيف هذا الدليل إلى Ubuntu 24.04 سطح المكتب الخفيف XFCE وxrdp، لتفتحه بتطبيق سطح المكتب البعيد نفسه الذي تستخدمه مع خادم Windows.
جرّبنا كل خطوة على صورة Ubuntu 24.04 لدينا. أفسد إعدادان افتراضيان المحاولة الأولى، ونصلحهما كليهما أدناه. ستحتاج إلى مستخدم عادي بصلاحية sudo، ودليل تجهيز Ubuntu ينشئ واحداً. اسمه في الأمثلة deploy.
1. ثبّت XFCE وxrdp
sudo apt update
sudo apt install -y xfce4 xfce4-goodies xrdp
استغرق ذلك على خادمنا ذي 2 GB نحو أربع دقائق ونصف، واستهلك 1.7 GB من القرص (كان المستخدم 2.7 GB قبل ذلك و4.4 GB بعده). يُثبَّت xrdp 0.9.24 ويبدأ فوراً ويستمع على المنفذ 3389.
2. اجعل xrdp يشغّل XFCE لا GNOME
ادخل باسم المستخدم الذي سيستعمل سطح المكتب ونفّذ:
echo xfce4-session > ~/.xsession
من دون هذا الملف شغّل أول دخول لنا GNOME بدل XFCE، وانهارت الجلسة فوراً مع رسالة "Oh no! Something has gone wrong". فالحزم في الخطوة 1 تجلب معها مدير جلسات GNOME، ويجعله Ubuntu الخيار الافتراضي. ومع وجود ~/.xsession يشغّل xrdp واجهة XFCE.
3. دع xrdp يستخدم TLS
يعمل xrdp باسم مستخدمه الخاص xrdp، وهذا المستخدم لا يستطيع قراءة المفتاح الخاص للخادم. نجح اتصالنا الأول، لكن /var/log/xrdp.log أظهر لماذا لا ينبغي الوثوق به:
Cannot read private key file /etc/xrdp/key.pem: Permission denied
Non-TLS connection established from ::ffff:127.0.0.1
من دون المفتاح يعود xrdp إلى تشفير RDP القديم بدل TLS. امنحه صلاحية القراءة وأعد التشغيل:
sudo adduser xrdp ssl-cert
sudo systemctl restart xrdp
ظهر الاتصال التالي في سجلنا بهذا الشكل: TLS connection established ... TLSv1.3. ويمكنك فحص خادمك بالطريقة نفسها:
sudo grep -E "TLS connection|Non-TLS" /var/log/xrdp.log | tail -2
4. أبعِد المنفذ 3389 عن الإنترنت
بعد التثبيت يستمع xrdp على كل العناوين. وخلافاً لـ Windows، ليس في xrdp خاصية Network Level Authentication، فكل من يصل إلى المنفذ يحصل على شاشة دخول يجرّب عليها كلمات المرور. اجعله يستمع على الخادم نفسه فقط:
sudo sed -i 's|^port=3389$|port=tcp://127.0.0.1:3389|' /etc/xrdp/xrdp.ini
sudo systemctl restart xrdp
ss -ltn | grep 3389
يجب أن يظهر في السطر الأخير 127.0.0.1:3389. في اختبارنا صار الاتصال المباشر بعنوان الخادم على المنفذ 3389 مرفوضاً بعد ذلك، وظل النفق في الخطوة التالية يعمل.
5. اتصل عبر SSH
افتح نفقاً على حاسوبك. في Windows يتوفر الأمر ssh نفسه في PowerShell:
ssh -L 13389:localhost:3389 deploy@YOUR.SERVER.IP
في خطة NAT أضف -p ومنفذ SSH الخاص بك من لوحة التحكم. أبقِ هذه النافذة مفتوحة. ثم وجّه تطبيق سطح المكتب البعيد إلى localhost:13389 وادخل باسم deploy بكلمة مرور هذا المستخدم:
- Windows: اتصال سطح المكتب البعيد (
mstsc). - macOS: تطبيق Windows App من App Store.
- Linux: Remmina، أو
xfreerdp /v:localhost:13389 /u:deploy.
المنفذ المحلي هو 13389 لا 3389، لأن المنفذ 3389 على حاسوبك قد يكون محجوزاً لسطح المكتب البعيد الخاص به. في المرة الأولى يحذّرك التطبيق من شهادة لا يعرفها. إنها الشهادة الموقّعة ذاتياً للخادم، والاتصال مشفّر أصلاً داخل SSH.
6. ماذا تحصل عليه
تحصل على سطح مكتب XFCE فيه شريط ومدير ملفات وطرفية. على خادمنا أضافت جلسة واحدة نحو 360 MB من الذاكرة: 388 MB مستخدمة قبل الاتصال و747 MB أثناء الجلسة.
إغلاق نافذة سطح المكتب البعيد لا يسجّل خروجك. في اختبارنا استمر أمر طويل بالعمل بعد قطع الاتصال. وعندما اتصلنا من جديد أعادنا xrdp إلى الجلسة نفسها (reconnected session ... display :10 في سجله). لإنهاء الجلسة فعلاً استخدم Log Out من قائمة XFCE.
أي خطة تختار
يحتاج سطح المكتب إلى الذاكرة أكثر من المعالج. خطة Micro (2 vCPU، 2 GB، 25 GB، $5 شهرياً) تشغّل XFCE والأدوات الخفيفة براحة. وإذا كنت ستُبقي متصفحاً مفتوحاً في الجلسة فاختر Small بـ 4 vCPU و4 GB مقابل $8 شهرياً. كلتاهما خطة NAT، ولا مشكلة في ذلك هنا: سطح المكتب البعيد يمر عبر منفذ SSH الخاص بك.
إذا كان ما تحتاجه فعلاً برامج Windows، فإن Windows VPS يشغّلها مباشرة، وتبدأ Windows-Small من $11 شهرياً. Ubuntu 24.04 موجود في صفحة Ubuntu VPS وفي كل خطط Linux ضمن VPS. الدفع بعملات USDT أو USDC أو ETH على شبكات Base أو Ethereum أو Polygon.
التعليقات
لا تعليقات بعد. كن الأول.