В
فہرست کا خانہ:
گرافیکل ماحول کو انسٹال کرنا
ہم Ubuntu Server 18.04 LTS کے ساتھ ایک ورچوئل مشین لیں گے جس میں دو کمپیوٹنگ کور، چار گیگا بائٹس RAM اور بیس گیگا بائٹ ہارڈ ڈرائیو (HDD) ہوگی۔ ایک کمزور کنفیگریشن گرافیکل ڈیسک ٹاپ کے لیے موزوں نہیں ہے، حالانکہ یہ ان کاموں پر منحصر ہے جو حل ہو رہے ہیں۔ اپنے آرڈر پر 10% ڈسکاؤنٹ حاصل کرنے کے لیے پرومو کوڈ Habrahabr10 استعمال کرنا نہ بھولیں۔
ڈیسک ٹاپ ماحول کو تمام انحصار کے ساتھ انسٹال کرنا مندرجہ ذیل کمانڈ کے ساتھ کیا جاتا ہے:
sudo apt-get install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
جیسا کہ پچھلے کیس میں تھا، ہم نے XFCE کا انتخاب اس کے نسبتاً کم کمپیوٹنگ وسائل کی ضروریات کی وجہ سے کیا۔
سرور اور سافٹ ویئر کی تنصیب کا رسیفیکیشن
اکثر ورچوئل مشینیں صرف انگریزی لوکلائزیشن کے ساتھ لگائی جاتی ہیں۔ ڈیسک ٹاپ پر آپ کو روسی زبان کی ضرورت ہو سکتی ہے، جس کا سیٹ اپ کرنا آسان ہے۔ سب سے پہلے، آئیے سسٹم پروگرامز کے لیے ترجمے انسٹال کریں:
sudo apt-get install language-pack-ru
آئیے لوکلائزیشن ترتیب دیں:
sudo update-locale LANG=ru_RU.UTF-8
اسی اثر کو دستی طور پر /etc/default/locale میں ترمیم کرکے حاصل کیا جاسکتا ہے۔
GNOME اور KDE کی لوکلائزیشن کے لیے، مخزن میں language-pack-gnome-ru اور language-pack-kde-ru پیکجز ہیں - اگر آپ ان ڈیسک ٹاپ ماحول سے پروگرام استعمال کرتے ہیں تو آپ کو ان کی ضرورت ہوگی۔ XFCE میں، ترجمے ایپلیکیشنز کے ساتھ انسٹال کیے جاتے ہیں۔ اگلا آپ لغات انسٹال کر سکتے ہیں:
# Словари для проверки орфографии
sudo apt-get install hunspell hunspell-ru
# Тезаурус для LibreOffice
sudo apt-get install mythes-ru
# Англо-русский словарь в формате DICT
sudo apt-get install mueller7-dict
اس کے علاوہ، کچھ ایپلیکیشن پروگراموں کے لیے ترجمے کی تنصیب کی ضرورت پڑ سکتی ہے:
# Браузер Firefox
sudo apt-get install firefox firefox-locale-ru
# Почтовый клиент Thunderbird
sudo apt-get install thunderbird thunderbird-locale-ru
# Офисный пакет LibreOffice
sudo apt-get install libreoffice libreoffice-l10n-ru libreoffice-help-ru
یہ ڈیسک ٹاپ ماحول کی تیاری کو مکمل کرتا ہے، جو کچھ باقی رہتا ہے وہ RDP سرور کو ترتیب دینا ہے۔
آر ڈی پی سرور کو انسٹال اور کنفیگر کرنا
Ubuntu کے ذخیروں میں آزادانہ طور پر تقسیم شدہ Xrdp سرور ہے، جسے ہم استعمال کریں گے:
sudo apt-get install xrdp
اگر سب کچھ ٹھیک رہا تو، سرور کو خود بخود شروع ہونا چاہئے:
sudo systemctl status xrdp
Xrdp سرور xrdp صارف کے حقوق کے ساتھ چلتا ہے اور بطور ڈیفالٹ /etc/ssl/private/ssl-cert-snakeoil.key سرٹیفکیٹ لیتا ہے، جسے آپ کے اپنے سے تبدیل کیا جا سکتا ہے۔ فائل کو پڑھنے تک رسائی حاصل کرنے کے لیے، آپ کو صارف کو ssl-cert گروپ میں شامل کرنے کی ضرورت ہے:
sudo adduser xrdp ssl-cert
پہلے سے طے شدہ ترتیبات کو /etc/default/xrdp فائل میں پایا جا سکتا ہے، اور دیگر تمام سرور کنفیگریشن فائلیں /etc/xrdp ڈائریکٹری میں موجود ہیں۔ اہم پیرامیٹرز xrdp.ini فائل میں ہیں، جنہیں تبدیل کرنے کی ضرورت نہیں ہے۔ تشکیل اچھی طرح سے دستاویزی ہے، اور متعلقہ مین پیجز شامل ہیں:
man xrdp.ini
man xrdp
جو کچھ باقی ہے وہ ہے /etc/xrdp/startwm.sh اسکرپٹ میں ترمیم کرنا، جو صارف کے سیشن کے شروع ہونے پر عمل میں لایا جاتا ہے۔ پہلے، آئیے تقسیم سے اسکرپٹ کی بیک اپ کاپی بنائیں:
sudo mv /etc/xrdp/startwm.sh /etc/xrdp/startwm.b
sudo nano /etc/xrdp/startwm.sh
XFCE ڈیسک ٹاپ ماحول شروع کرنے کے لیے، آپ کو ایک اسکرپٹ کی ضرورت ہوگی کچھ اس طرح:
#!/bin/sh
if [ -r /etc/default/locale ]; then
. /etc/default/locale
export LANG LANGUAGE
fi
exec /usr/bin/startxfce4
براہ کرم نوٹ کریں: اسکرپٹ میں قابل عمل فائلوں کا مکمل راستہ لکھنا بہتر ہے - یہ ایک اچھی عادت ہے۔ آئیے اسکرپٹ کو قابل عمل بناتے ہیں اور اس وقت Xrdp سرور کے سیٹ اپ کو مکمل سمجھا جا سکتا ہے:
sudo chmod 755 /etc/xrdp/startwm.sh
سرور کو دوبارہ شروع کریں:
sudo systemctl restart xrdp
فائر وال سیٹ اپ کرنا
پہلے سے طے شدہ طور پر، Xrdp تمام انٹرفیس پر TCP پورٹ 3389 کو سنتا ہے۔ ورچوئل سرور کنفیگریشن پر منحصر ہے، آپ کو نیٹ فلٹر فائر وال کو کنفیگر کرنے کی ضرورت پڑ سکتی ہے۔ لینکس پر یہ عام طور پر iptables یوٹیلیٹی کا استعمال کرتے ہوئے کیا جاتا ہے، لیکن Ubuntu پر ufw استعمال کرنا بہتر ہے۔ اگر کلائنٹ کا آئی پی ایڈریس معلوم ہے تو، ترتیب درج ذیل کمانڈ کے ساتھ کی جاتی ہے:
sudo ufw allow from IP_Address to any port 3389
آپ کسی بھی آئی پی سے اس طرح کنکشن کی اجازت دے سکتے ہیں:
sudo ufw allow 3389
RDP پروٹوکول انکرپشن کو سپورٹ کرتا ہے، لیکن Xrdp سرور کو پبلک نیٹ ورکس کے سامنے لانا برا خیال ہے۔ اگر کلائنٹ کے پاس ایک مقررہ IP نہیں ہے تو، سرور کو سیکیورٹی بڑھانے کے لیے صرف لوکل ہوسٹ کو سننا چاہیے۔ SSH ٹنل کے ذریعے اس تک رسائی حاصل کرنا بہتر ہے، جو کلائنٹ کمپیوٹر سے ٹریفک کو محفوظ طریقے سے ری ڈائریکٹ کرے گا۔ ہمارے پاس اسی طرح کا نقطہ نظر ہے۔
ایک RDP سرور سے منسلک ہو رہا ہے۔
ڈیسک ٹاپ ماحول کے ساتھ کام کرنے کے لیے، ایک علیحدہ غیر مراعات یافتہ صارف بنانا بہتر ہے:
sudo adduser rdpuser
آئیے صارف کو sudo گروپ میں شامل کریں تاکہ وہ انتظامیہ سے متعلقہ کام انجام دے سکے۔ اگر ایسی کوئی ضرورت نہیں ہے تو، آپ اس قدم کو چھوڑ سکتے ہیں:
sudo gpasswd -a rdpuser sudo
آپ کسی بھی RDP کلائنٹ کا استعمال کرتے ہوئے سرور سے جڑ سکتے ہیں، بشمول بلٹ ان Windows Remote Desktop Services کلائنٹ۔ اگر Xrdp بیرونی انٹرفیس کو سن رہا ہے، تو کسی اضافی کارروائی کی ضرورت نہیں ہوگی۔ کنکشن کی ترتیبات میں VPS IP ایڈریس، صارف نام اور پاس ورڈ کی وضاحت کرنا کافی ہے۔ منسلک ہونے کے بعد، ہم کچھ اس طرح دیکھیں گے:
ڈیسک ٹاپ ماحول کے ابتدائی سیٹ اپ کے بعد، ہمیں ایک مکمل ڈیسک ٹاپ ملے گا۔ جیسا کہ آپ دیکھ سکتے ہیں، یہ بہت سے وسائل استعمال نہیں کرتا، حالانکہ سب کچھ استعمال شدہ ایپلی کیشنز پر منحصر ہوگا۔
اگر Xrdp سرور صرف لوکل ہوسٹ کو سنتا ہے، تو کلائنٹ کمپیوٹر پر ٹریفک کو SSH سرنگ میں پیک کرنا پڑے گا (sshd VPS پر چل رہا ہونا چاہیے)۔ ونڈوز پر، آپ گرافیکل SSH کلائنٹ (مثال کے طور پر، PuTTY) استعمال کر سکتے ہیں، اور UNIX سسٹم پر آپ کو ssh یوٹیلیٹی کی ضرورت ہے:
ssh -L 3389:127.0.0.1:3389 -C -N -l rdpuser RDP_server_ip
سرنگ شروع ہونے کے بعد، RDP کلائنٹ اب ریموٹ سرور سے نہیں بلکہ مقامی میزبان سے جڑے گا۔
موبائل آلات کے ساتھ یہ زیادہ مشکل ہے: ایک سرنگ کو بڑھانے کے قابل SSH کلائنٹس کو خریدنا پڑے گا، اور iOS اور iPadOS میں، تھرڈ پارٹی ایپلی کیشنز کا بیک گراؤنڈ آپریشن توانائی کی کھپت کی بہت اچھی اصلاح کی وجہ سے مشکل ہے۔ آئی فون اور آئی پیڈ پر، آپ الگ ایپلی کیشن میں سرنگ نہیں بنا سکیں گے؛ آپ کو ہارویسٹر ایپلی کیشن کی ضرورت ہوگی جو خود SSH کے ذریعے RDP کنکشن قائم کر سکے۔ جیسے، مثال کے طور پر
سیشن مینیجر اور صارف کے سیشنز
ملٹی یوزر کام کرنے کی صلاحیت براہ راست Xrdp سرور میں لاگو ہوتی ہے اور اس کے لیے اضافی کنفیگریشن کی ضرورت نہیں ہوتی ہے۔ سسٹم ڈی کے ذریعے سروس شروع کرنے کے بعد، ایک عمل ڈیمون موڈ میں چلتا ہے، پورٹ 3389 پر سنتا ہے اور لوکل ہوسٹ کے ذریعے سیشن مینیجر کے ساتھ بات چیت کرتا ہے۔
ps aux |grep xrdp
sudo netstat -ap |grep xrdp
سیشن مینیجر عام طور پر صارفین کو نظر نہیں آتا، کیونکہ کلائنٹ کی سیٹنگز میں بیان کردہ لاگ ان اور پاس ورڈ خود بخود اس میں منتقل ہو جاتے ہیں۔ اگر ایسا نہیں ہوتا ہے یا تصدیق کے دوران کوئی خرابی ہوتی ہے، تو ڈیسک ٹاپ کی بجائے ایک انٹرایکٹو لاگ ان ونڈو نمودار ہوگی۔
سیشن مینیجر کا خودکار آغاز /etc/default/xrdp فائل میں بیان کیا گیا ہے، اور کنفیگریشن /etc/xrdp/sesman.ini میں محفوظ ہے۔ پہلے سے طے شدہ طور پر یہ کچھ اس طرح لگتا ہے:
[Globals]
ListenAddress=127.0.0.1
ListenPort=3350
EnableUserWindowManager=true
UserWindowManager=startwm.sh
DefaultWindowManager=startwm.sh
[Security]
AllowRootLogin=true
MaxLoginRetry=4
TerminalServerUsers=tsusers
TerminalServerAdmins=tsadmins
; When AlwaysGroupCheck=false access will be permitted
; if the group TerminalServerUsers is not defined.
AlwaysGroupCheck=false
[Sessions]
آپ کو یہاں کچھ بھی تبدیل کرنے کی ضرورت نہیں ہے، آپ کو صرف روٹ رائٹس (AllowRootLogin=false) کے ساتھ لاگ ان کو غیر فعال کرنا ہوگا۔ سسٹم میں مجاز ہر صارف کے لیے، ایک علیحدہ xrdp عمل شروع کیا جاتا ہے: اگر آپ سیشن کو ختم کیے بغیر منقطع ہو جاتے ہیں، تو صارف کے عمل پہلے سے طے شدہ طور پر چلتے رہیں گے، اور آپ دوبارہ سیشن سے منسلک ہو سکتے ہیں۔ سیٹنگز کو /etc/xrdp/sesman.ini فائل ([سیشن] سیکشن) میں تبدیل کیا جا سکتا ہے۔
کی بورڈ لے آؤٹ کو تبدیل کرنا
عام طور پر دو طرفہ کلپ بورڈ کے ساتھ کوئی مسئلہ نہیں ہوتا ہے، لیکن روسی کی بورڈ لے آؤٹ کے ساتھ آپ کو تھوڑا سا کھیلنا پڑے گا (روسی لوکیل پہلے سے ہی ہونا چاہئے
sudo nano /etc/xrdp/xrdp_keyboard.ini
آپ کو کنفیگریشن فائل کے آخر میں درج ذیل لائنیں شامل کرنے کی ضرورت ہے۔
[rdp_keyboard_ru]
keyboard_type=4
keyboard_type=7
keyboard_subtype=1
model=pc105
options=grp:alt_shift_toggle
rdp_layouts=default_rdp_layouts
layouts_map=layouts_map_ru
[layouts_map_ru]
rdp_layout_us=us,ru
rdp_layout_ru=us,ru
فائل کو محفوظ کرنا اور Xrdp کو دوبارہ شروع کرنا باقی ہے:
sudo systemctl restart xrdp
جیسا کہ آپ دیکھ سکتے ہیں، لینکس VPS پر RDP سرور قائم کرنا مشکل نہیں ہے، لیکن
ماخذ: www.habr.com