توجه: این مقاله به مرور زمان، ویرایش و یا تکمیل میشود!
تقاضا: در صورتی که با مشکل تایپی، دستوری و یا مفهومی در این مقاله برخورد کردید، از شما دوست عزیز و گرامی، صمیمانه تقاضا میکنم که اینجانب را مطلع کرده، تا نسبت به تصحیح و یا تکمیل آن، در اسرع وقت، اقدام نمایم.
با کمال تشکر
امیرحسین امانی
کانال تلگرام: Amh_78@
نشانی پست الکترونیکی: a42464849@gmail.com
نسخه مقاله: ۱.۰ - تاریخ بروزرسانی: ۱۴۰۳/۰۶/۲۹
برای این منظور، به ترتیب مراحل ذیل را در Terminal انجام میدهیم:
sudo -i apt update -y apt upgrade -y apt install nano -y apt install xrdp -y
ما Desktop های متنوعی میتوانیم نصب کنیم. ولی یکی از سبکترین آنها xfce4 میباشد. لذا با استفاده از دستور ذیل اقدام به نصب آن میکنیم:
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.ini
port=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 start
OR
service xrdp start
* Starting Remote Desktop Protocol server
برای مشاهده وضعیت سرویس xrdp، میتوانیم یکی از دو دستور ذیل را استفاده نماییم:
/etc/init.d/xrdp status
OR
service xrdp status
برای راهاندازی مجدد سرویس xrdp، میتوانیم یکی از دو دستور ذیل را استفاده نماییم:
نکته: هرگاه هر فایلی که مربوط به تنظیمات یک سرویس میباشد را تغییر میدهیم، برای اینکه این تغییرات اعمال شود، باید سرویس را یکبار Stop/Start و یا Restart نماییم.
/etc/init.d/xrdp restart
OR
service xrdp restart
برای متوقف کردن سرویس xrdp، میتوانیم یکی از دو دستور ذیل را استفاده نماییم:
/etc/init.d/xrdp stop
OR
service 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 3390
OR
ufw allow from any to any port 3390 proto tcp
حال از طریق برنامه Remote Desktop Windows آدرس Server را با Port جدیدی که اعلام کردهایم وارد کرده و وارد Server میشویم:
[SERVER_IP]:3390
OR
localhost:3390
زمانی که وارد Server میشویم و بر روی مرورگر (Browser) کلیک میکنیم، به ما خطا میدهد که هیچ مرورگری در حال حاضر وجود ندارد. برای حل این مشکل، در داخل Server، وارد Terminal شده و دستور ذیل را برای نصب فایرفاکس اجرا میکنیم:
apt install firefox -y