راه‌اندازی Desktop بر روی Linux Ubuntu Server و اتصال به آن از طریق Remote Desktop

توجه: این مقاله به مرور زمان، ویرایش و یا تکمیل می‌شود!تقاضا: در صورتی که با مشکل تایپی، دستوری و یا مفهومی در این مقاله برخورد کردید، از شما دوست عزیز و گرامی، صمیمانه تقاضا می‌کنم که اینجانب را مطلع کرده، تا نسبت به تصحیح و یا تکمیل آن، در اسرع وقت، اقدام نمایم.با کمال تشکرداریوش تصدیقیکلیه اطلاع تماس: https://DTAT.irنسخه مقاله: ۱.۰ - تاریخ بروزرسانی: ۱۴۰۱/۰۱/۲۱برای این منظور، به ترتیب مراحل ذیل را در Terminal انجام می‌دهیم:sudo -i apt update -y apt upgrade -y apt install nano -y apt install xrdp -yما Desktop های متنوعی می‌توانیم نصب کنیم. ولی یکی از سبک‌ترین آن‌ها xfce4 می‌باشد. لذا با استفاده از دستور ذیل اقدام به نصب آن می‌کنیم:https://www.xfce.org/apt install xfce4 -yنصب بسته ذیل، الزامی نمی‌باشد و صرفا ابزارهای اضافه‌ای در محیط Desktop فوق ایجاد می‌کند. لذا در صورت تمایل می‌توانیم بسته ذیل را نیز نصب نماییم:apt install xfce4-goodies -yمی‌توانیم برای مشاهده اجزای بسته xfce4-goodies، به نشانی ذیل مراجعه نماییم:https://packages.debian.org/stretch/xfce/xfce4-goodiesدر هنگام نصب، از ما سوال می‌کند که از چه Display Manager ای می‌خواهیم استفاده کنیم، که ما همان گزینه پیش‌فرض gdm3 را انتخاب می‌کنیم.نکته: gdm3 نسبت به ligthdm سبک‌تر می‌باشد.نکته مهم: اصولا راه‌اندازی سرویس RDP‌ برای روی Server، چندان کار هوشمندانه‌ای نمی‌باشد و امنیت Server را تا حد زیادی پایین آورده و آن‌را به خطر می‌اندازد، ولی برای این‌که کمی ریسک راه‌اندازی این سرویس را کم نماییم، می‌توانیم Port پیش‌فرض این پروتکل را تغییر دهیم. ضمنا باید توجه داشته باشیم که اگر Server‌ ما به صورت WSL 1‌ یا WSL 2 در سیستم Windows ما راه‌اندازی شده باشد، مجبوریم که این Port را تغییر دهیم، در غیر این صورت، سرویس پیش‌فرض Remote Desktop ویندوز ما به مشکل خواهد خورد!برای این منظور، باید فایل xrdp.ini را تغییر دهیم.همیشه توصیه می‌شود که قبل از تغییر فایل‌های تنظیمات، از آن‌ها یک Backup بگیریم. برای این منظور از دستور ذیل استفاده می‌کنیم:cp /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.bakحال با استفاده از دستور nano، فایل مذکور را باز کرده و تغییرات ذیل را اعمال می‌کنیم:Nano /etc/xrdp/xrdp.iniport=3389 (TO) port=3390سرویس xrdp، برای اجرای X Session، از فایل startwm.sh استفاده می‌کند. در صورتی که بخواهیم از یک X Window Desktop دیگری استفاده نماییم، می‌توانیم محتوای این فایل را نیز تغییر دهیم.قبل از تغییر این فایل نیز مجددا یک Backup فایل می‌گیریم:cp /etc/xrdp/startwm.sh /etc/xrdp/startwm.sh.bakحال با استفاده از دستور nano، وارد فایل startwm.sh شده:nano /etc/xrdp/startwm.shو سپس دو خط انتهایی را Comment می‌کنیم:#test -x /etc/X11/Xsession && exec /etc/X11/Xsession#exec /bin/sh /etc/X22/Xsessionو خط ذیل را به انتهای فایل اضافه می‌کنیم:startxfce4فایل را با استفاده از دکمه‌های ترکیبی CTRL+X ذخیره کرده و از محیط nano، خارج می‌شویم.برای راه‌اندازی سرویس xrdp‌، می‌توانیم یکی از دو دستور ذیل را استفاده نماییم:/etc/init.d/xrdp startORservice xrdp start* Starting Remote Desktop Protocol serverبرای مشاهده وضعیت سرویس xrdp، می‌توانیم یکی از دو دستور ذیل را استفاده نماییم:/etc/init.d/xrdp statusORservice xrdp statusبرای راه‌اندازی مجدد سرویس xrdp، می‌توانیم یکی از دو دستور ذیل را استفاده نماییم:نکته: هرگاه هر فایلی که مربوط به تنظیمات یک سرویس می‌باشد را تغییر می‌دهیم، برای این‌که این تغییرات اعمال شود، باید سرویس را یک‌بار Stop/Start و یا Restart نماییم./etc/init.d/xrdp restartORservice xrdp restartبرای متوقف کردن سرویس xrdp، می‌توانیم یکی از دو دستور ذیل را استفاده نماییم:/etc/init.d/xrdp stopORservice xrdp stopبرای این‌که هرگاه Server‌ را مجددا راه‌اندازی (Reboot) کردیم، سرویس xrdp، به طور خودکار راه‌اندازی شود،‌ می‌توانیم از دستور ذیل استفاده نماییم:نکته: در صورتی که لینوکس با فناوری WSL2 راه‌اندازی شده باشد، دستور ذیل کار نمی‌کند!systemctl enable xrdpاساسا توصیه نمی‌گردد که با کاربر root و از طریق Remote Desktop وارد Server شویم. لذا ابتدا یک کاربر، مثلا به نام rdpuser ایجاد کرده:adduser rdpuserو سپس این کاربر را عضو گروه sudo می‌کنیم:usermod -aG sudo rdpuserدر صورتی که بر روی Server، Firewall نصب شده باشد (که البته قطعا باید نصب و راه‌اندازی شده باشد)، با استفاده از یکی از دو دستور ذیل Port مذکور را آزاد می‌کنیم:ufw allow 3390ORufw allow from any to any port 3390 proto tcpحال از طریق برنامه Remote Desktop Windows آدرس Server را با Port جدیدی که اعلام کرده‌ایم وارد کرده و وارد Server می‌شویم:[SERVER_IP]:3390ORlocalhost:3390زمانی که وارد Server می‌شویم و بر روی مرورگر (Browser) کلیک می‌کنیم، به ما خطا می‌دهد که هیچ مرورگری در حال حاضر وجود ندارد. برای حل این مشکل، در داخل Server، وارد Terminal شده و دستور ذیل را برای نصب فایرفاکس اجرا می‌کنیم:apt install firefox -yپایان