Π
Oglavlenie:
Grafik muhitni o'rnatish
ΠΡ Π²ΠΎΠ·ΡΠΌΠ΅ΠΌ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ Ρ Ubuntu Server 18.04 LTS Ρ Π΄Π²ΡΠΌΡ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΠ΄ΡΠ°ΠΌΠΈ, ΡΠ΅ΡΡΡΡΠΌΡ Π³ΠΈΠ³Π°Π±Π°ΠΉΡΠ°ΠΌΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΠΆΠ΅ΡΡΠΊΠΈΠΌ Π΄ΠΈΡΠΊΠΎΠΌ (HDD) Π½Π° Π΄Π²Π°Π΄ΡΠ°ΡΡ Π³ΠΈΠ³Π°Π±Π°ΠΉΡ. ΠΠΎΠ»Π΅Π΅ ΡΠ»Π°Π±Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΏΠ»ΠΎΡ ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π΄Π΅ΡΠΊΡΠΎΠΏΠ°, Ρ ΠΎΡΡ ΡΡΠΎ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ΅ΡΠ°Π΅ΠΌΡΡ Π·Π°Π΄Π°Ρ. ΠΠ΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΌΠΎΠΊΠΎΠ΄ Habrahabr10 Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΊΠΈΠ΄ΠΊΠΈ Π² 10% ΠΏΡΠΈ Π·Π°ΠΊΠ°Π·Π΅.
Ish stoli muhitini barcha bog'liqliklar bilan o'rnatish quyidagi buyruq bilan amalga oshiriladi:
sudo apt-get install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
Oldingi holatda bo'lgani kabi, biz XFCE ni nisbatan past hisoblash resurslari talablari tufayli tanladik.
Serverni ruslashtirish va dasturiy ta'minotni o'rnatish
Ko'pincha virtual mashinalar faqat inglizcha lokalizatsiya bilan joylashtiriladi. Ish stolida sizga rus tili kerak bo'lishi mumkin, uni sozlash oson. Birinchidan, tizim dasturlari uchun tarjimalarni o'rnatamiz:
sudo apt-get install language-pack-ru
Keling, mahalliylashtirishni o'rnatamiz:
sudo update-locale LANG=ru_RU.UTF-8
Xuddi shu effektga /etc/default/locale-ni qo'lda tahrirlash orqali erishish mumkin.
GNOME va KDE-ni lokalizatsiya qilish uchun omborda language-pack-gnome-ru va language-pack-kde-ru paketlari mavjud - agar siz ushbu ish stoli muhitidagi dasturlardan foydalansangiz, ular sizga kerak bo'ladi. XFCE-da tarjimalar ilovalar bilan o'rnatiladi. Keyin lug'atlarni o'rnatishingiz mumkin:
# Π‘Π»ΠΎΠ²Π°ΡΠΈ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΎΡΡΠΎΠ³ΡΠ°ΡΠΈΠΈ
sudo apt-get install hunspell hunspell-ru
# Π’Π΅Π·Π°ΡΡΡΡ Π΄Π»Ρ LibreOffice
sudo apt-get install mythes-ru
# ΠΠ½Π³Π»ΠΎ-ΡΡΡΡΠΊΠΈΠΉ ΡΠ»ΠΎΠ²Π°ΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ DICT
sudo apt-get install mueller7-dict
Bundan tashqari, ba'zi amaliy dasturlar uchun tarjimalarni o'rnatish talab qilinishi mumkin:
# ΠΡΠ°ΡΠ·Π΅Ρ 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
Bu ish stoli muhitini tayyorlashni yakunlaydi, faqat RDP serverini sozlash qoladi.
RDP serverini o'rnatish va sozlash
Ubuntu omborlarida erkin taqsimlangan Xrdp server mavjud, biz undan foydalanamiz:
sudo apt-get install xrdp
Agar hamma narsa yaxshi bo'lsa, server avtomatik ravishda ishga tushishi kerak:
sudo systemctl status xrdp
Xrdp serveri xrdp foydalanuvchi huquqlari bilan ishlaydi va sukut bo'yicha /etc/ssl/private/ssl-cert-snakeoil.key sertifikatini oladi, uni o'zingizniki bilan almashtirish mumkin. Faylni o'qish huquqiga ega bo'lish uchun foydalanuvchini ssl-cert guruhiga qo'shishingiz kerak:
sudo adduser xrdp ssl-cert
Standart sozlamalarni /etc/default/xrdp faylida topish mumkin va boshqa barcha server konfiguratsiya fayllari /etc/xrdp katalogida joylashgan. Asosiy parametrlar xrdp.ini faylida bo'lib, uni o'zgartirish kerak emas. Konfiguratsiya yaxshi hujjatlashtirilgan va tegishli boshqaruv sahifalari kiritilgan:
man xrdp.ini
man xrdp
Qolgan narsa /etc/xrdp/startwm.sh skriptini tahrirlash bo'lib, u foydalanuvchi sessiyasi ishga tushirilganda bajariladi. Birinchidan, tarqatishdan skriptning zaxira nusxasini yarataylik:
sudo mv /etc/xrdp/startwm.sh /etc/xrdp/startwm.b
sudo nano /etc/xrdp/startwm.sh
XFCE ish stoli muhitini ishga tushirish uchun sizga quyidagi kabi skript kerak bo'ladi:
#!/bin/sh
if [ -r /etc/default/locale ]; then
. /etc/default/locale
export LANG LANGUAGE
fi
exec /usr/bin/startxfce4
E'tibor bering: skriptlarda bajariladigan fayllarga to'liq yo'lni yozish yaxshiroqdir - bu yaxshi odat. Skriptni bajariladigan holga keltiramiz va shu nuqtada Xrdp serverini sozlash tugallangan deb hisoblanishi mumkin:
sudo chmod 755 /etc/xrdp/startwm.sh
Serverni qayta ishga tushiring:
sudo systemctl restart xrdp
Xavfsizlik devorini o'rnatish
Odatiy bo'lib, Xrdp barcha interfeyslarda TCP 3389 portini tinglaydi. Virtual server konfiguratsiyasiga qarab, Netfilter xavfsizlik devorini sozlashingiz kerak bo'lishi mumkin. Linuxda bu odatda iptables yordam dasturi yordamida amalga oshiriladi, lekin Ubuntuda ufw dan foydalanish yaxshidir. Agar mijozning IP manzili ma'lum bo'lsa, konfiguratsiya quyidagi buyruq bilan amalga oshiriladi:
sudo ufw allow from IP_Address to any port 3389
Siz har qanday IP-dan ulanishga ruxsat berishingiz mumkin:
sudo ufw allow 3389
RDP protokoli shifrlashni qo'llab-quvvatlaydi, ammo Xrdp serverini umumiy tarmoqlarga ta'sir qilish yomon fikrdir. Agar mijozda sobit IP bo'lmasa, xavfsizlikni oshirish uchun server faqat localhost-ni tinglashi kerak. Mijoz kompyuteridan trafikni xavfsiz tarzda yo'naltiradigan SSH tunneli orqali unga kirish yaxshidir. Bizda ham xuddi shunday yondashuv bor
RDP serveriga ulanish
Ish stoli muhiti bilan ishlash uchun alohida imtiyozsiz foydalanuvchi yaratish yaxshiroqdir:
sudo adduser rdpuser
Keling, foydalanuvchini sudo guruhiga qo'shamiz, shunda u ma'muriyat bilan bog'liq vazifalarni bajara oladi. Agar bunday ehtiyoj bo'lmasa, siz ushbu bosqichni o'tkazib yuborishingiz mumkin:
sudo gpasswd -a rdpuser sudo
Serverga istalgan RDP mijozi, jumladan, o'rnatilgan Windows masofaviy ish stoli xizmatlari mijozi yordamida ulanishingiz mumkin. Agar Xrdp tashqi interfeysni tinglayotgan bo'lsa, qo'shimcha harakatlar talab qilinmaydi. Ulanish sozlamalarida VPS IP manzilini, foydalanuvchi nomi va parolni ko'rsatish kifoya. Ulanishdan so'ng biz shunga o'xshash narsani ko'ramiz:
Ish stoli muhitini dastlabki sozlashdan so'ng biz to'liq ish stoliga ega bo'lamiz. Ko'rib turganingizdek, u ko'p resurslarni iste'mol qilmaydi, garchi hamma narsa ishlatiladigan ilovalarga bog'liq bo'ladi.
Agar Xrdp serveri faqat localhost-ni tinglasa, mijoz kompyuteridagi trafik SSH tunneliga to'planishi kerak (sshd VPS-da ishlayotgan bo'lishi kerak). Windows-da siz grafik SSH mijozidan (masalan, PuTTY) foydalanishingiz mumkin va UNIX tizimlarida sizga ssh yordam dasturi kerak bo'ladi:
ssh -L 3389:127.0.0.1:3389 -C -N -l rdpuser RDP_server_ip
Tunnel ishga tushirilgandan so'ng, RDP mijozi endi uzoq serverga emas, balki mahalliy xostga ulanadi.
Mobil qurilmalar bilan bu qiyinroq: tunnelni ko'tarishga qodir SSH mijozlarini sotib olish kerak bo'ladi va iOS va iPadOS-da energiya sarfini juda yaxshi optimallashtirish tufayli uchinchi tomon ilovalarining fonda ishlashi qiyin. IPhone va iPad-da siz alohida dasturda tunnel yarata olmaysiz; sizga SSH orqali RDP ulanishini o'rnatishi mumkin bo'lgan kombayn dasturi kerak bo'ladi. Masalan, masalan
Seans menejeri va foydalanuvchi sessiyalari
Ko'p foydalanuvchili ishlash qobiliyati to'g'ridan-to'g'ri Xrdp serverida amalga oshiriladi va qo'shimcha konfiguratsiyani talab qilmaydi. Systemd orqali xizmatni ishga tushirgandan so'ng, bitta jarayon demon rejimida ishlaydi, 3389 portni tinglaydi va seans menejeri bilan localhost orqali bog'lanadi.
ps aux |grep xrdp
sudo netstat -ap |grep xrdp
ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΡΠ΅Π°Π½ΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π΅ Π²ΠΈΠ΄Π΅Π½, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π·Π°Π΄Π°Π½Π½ΡΠ΅ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ
ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π΅ΠΌΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ. ΠΡΠ»ΠΈ ΡΡΠΎΠ³ΠΎ Π½Π΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ ΠΈΠ»ΠΈ ΠΏΡΠΈ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΠΎΡΠΈΠ±ΠΊΠ°, Π²ΠΌΠ΅ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΡΠΎΠ»Π° ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π΄Π»Ρ Π²Ρ
ΠΎΠ΄Π° Π² ΡΠΈΡΡΠ΅ΠΌΡ.
Seans menejerining avtomatik ishga tushirilishi /etc/default/xrdp faylida ko'rsatilgan va konfiguratsiya /etc/xrdp/sesman.ini da saqlanadi. Odatiy bo'lib, u shunday ko'rinadi:
[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]
Bu erda hech narsani o'zgartirishingiz shart emas, faqat ildiz huquqlari bilan kirishni o'chirib qo'yishingiz kerak (AllowRootLogin=false). Tizimda ruxsat berilgan har bir foydalanuvchi uchun alohida xrdp jarayoni ishga tushiriladi: seansni tugatmasdan uzsangiz, foydalanuvchi jarayonlari sukut bo'yicha ishlashda davom etadi va siz yana sessiyaga ulanishingiz mumkin. Sozlamalarni /etc/xrdp/sesman.ini faylida o'zgartirish mumkin ([Sessions] bo'limi).
Klaviatura tartibini almashtirish
Odatda ikki tomonlama bufer bilan bog'liq muammolar bo'lmaydi, lekin ruscha klaviatura tartibida siz biroz o'ynashingiz kerak bo'ladi (rus tili allaqachon bo'lishi kerak)
sudo nano /etc/xrdp/xrdp_keyboard.ini
Konfiguratsiya faylining oxiriga quyidagi qatorlarni qo'shishingiz kerak:
[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
Faqatgina faylni saqlash va Xrdp-ni qayta ishga tushirish qoladi:
sudo systemctl restart xrdp
Ko'rib turganingizdek, Linux VPS-da RDP serverini o'rnatish qiyin emas, lekin
Manba: www.habr.com