В sixoxe ngokuqhuba iseva yeVNC kumatshini wenyani walo naluphi na uhlobo. Olu khetho lunezinto ezininzi ezingalunganga, eyona nto iphambili kwiimfuno eziphezulu zokugqithiswa kwamajelo okuhanjiswa kwedatha. Namhlanje siza kuzama ukuqhagamshela kwi-desktop yomzobo kwi-Linux nge-RDP (i-Remote Desktop Protocol). Inkqubo ye-VNC isekelwe ekugqithiseni uluhlu lweepikseli usebenzisa i-RFB (i-Remote Framebuffer) protocol, kwaye i-RDP ikuvumela ukuba uthumele imizobo entsonkothileyo yamandulo kunye nemiyalelo yomgangatho ophezulu. Ngokuqhelekileyo isetyenziselwa ukusingatha iiNkonzo zeDesktop ezikude kwiWindows, kodwa iiseva zeLinux zikwakhona.
Isiqulatho:
Ukuhlohla imeko-bume yegraphical
Siza kuthatha umatshini obonakalayo kunye no-Ubuntu Server 18.04 LTS kunye ne-computing cores ezimbini, iigigabhayithi ezine ze-RAM kunye ne-hard drive ye-gigabyte engamashumi amabini (HDD). Uqwalaselo olubuthathaka aluyilungelanga idesktop yomzobo, nangona oku kuxhomekeke kwimisebenzi esonjululwayo. Ungalibali ukusebenzisa ikhowudi ye-promo Habrahabr10 ukufumana isaphulelo se-10% kwi-odolo yakho.

Ukuhlohla imeko-bume yedesktop enabo bonke abaxhomekeke kuyenziwa ngalo myalelo ulandelayo:
sudo apt-get install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utilsNjengakwimeko yangaphambili, sikhethe i-XFCE ngenxa yeemfuno zayo zezixhobo zekhompyutha ezisezantsi.
Ukwenziwa kweRussification yeseva kunye nofakelo lwesoftware
Amaxesha amaninzi oomatshini boqobo babekwa kuphela ngesiNgesi salapha ekhaya. Kwidesktop unokufuna isiRashiya, ekulula ukuseta. Okokuqala, masifakele iinguqulelo zenkqubo yenkqubo:
sudo apt-get install language-pack-ruMasiseke ukwenziwa kwendawo:
sudo update-locale LANG=ru_RU.UTF-8Isiphumo esifanayo sinokufezekiswa ngokuhlela ngesandla /etc/default/locale.
Ukwenziwa kwalapha ekhaya kwe GNOME kunye ne KDE, indawo yokugcina inolwimi-pack-gnome-ru kunye nolwimi-ipack-kde-ru phakheji - uzakuzifuna ukuba usebenzisa udweliso lweenkqubo kwezi meko-bume zedesktop. Kwi-XFCE, iinguqulelo zifakelwe kunye nezicelo. Okulandelayo ungafaka izichazi-magama:
# Словари для проверки орфографии
sudo apt-get install hunspell hunspell-ru
# Тезаурус для LibreOffice
sudo apt-get install mythes-ru
# Англо-русский словарь в формате DICT
sudo apt-get install mueller7-dictUkongeza, ukufakela iinguqulelo kunokufuneka kwezinye iinkqubo zesicelo:
# Браузер 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-ruOku kugqiba ukulungiswa kwemeko-bume yedesktop, konke okuseleyo kukuqwalasela iseva yeRDP.
Ukufakela kunye nokuqwalasela iseva ye-RDP
I-Ubuntu yokugcina ine-server ye-Xrdp esasazwe ngokukhululekileyo, esiya kuyisebenzisa:
sudo apt-get install xrdpUkuba yonke into ihambe kakuhle, iseva kufuneka iqale ngokuzenzekelayo:
sudo systemctl status xrdp 
Umncedisi we-Xrdp usebenza ngamalungelo omsebenzisi we-xrdp kwaye ngokungagqibekanga uthatha isatifikethi se-/etc/ssl/private/ssl-cert-snakeoil.key, esinokutshintshwa ngesakho. Ukuze ube nofikelelo lokufunda ifayile, kufuneka udibanise umsebenzisi kwiqela le-ssl-cert:
sudo adduser xrdp ssl-certImimiselo engagqibekanga inokufumaneka kwifayile /etc/default/xrdp, kunye nazo zonke ezinye iifayile zoqwalaselo lomncedisi zibekwe kwi/etc/xrdp directory. Iiparamitha eziphambili zikwifayile ye-xrdp.ini, engadingi ukutshintshwa. Uqwalaselo lubhalwe kakuhle, kwaye iimanpages ezihambelanayo zibandakanyiwe:
man xrdp.ini
man xrdpEkuphela kwento eseleyo kukuhlela /etc/xrdp/startwm.sh iskripthi, esenziwa xa iseshoni yomsebenzisi iqaliswa. Okokuqala, masenze ikopi yogcino lweskripthi kunikezelo:
sudo mv /etc/xrdp/startwm.sh /etc/xrdp/startwm.b
sudo nano /etc/xrdp/startwm.shUkuqala indawo ye-desktop ye-XFCE, uya kufuna iskripthi into enje:
#!/bin/sh
if [ -r /etc/default/locale ]; then
. /etc/default/locale
export LANG LANGUAGE
fi
exec /usr/bin/startxfce4Nceda uqaphele: kwizikripthi kungcono ukubhala umendo opheleleyo kwiifayile eziphunyeziweyo - lo ngumkhwa omhle. Masenze iskripthi siphunyezwe kwaye okwangoku ukusetwa kweseva yeXrdp kunokuqwalaselwa kugqibelele:
sudo chmod 755 /etc/xrdp/startwm.shQala kwakhona iseva:
sudo systemctl restart xrdp
Ukuseta i-firewall
Ngokungagqibekanga, i-Xrdp imamela i-TCP port 3389 kuzo zonke iindawo. Kuxhomekeke kuqwalaselo lomncedisi wenyani, unokufuna ukuqwalasela i-firewall ye-Netfilter. KwiLinux oku kuqhele ukwenziwa kusetyenziswa iptables eziluncedo, kodwa ku-Ubuntu kungcono ukusebenzisa ufw. Ukuba idilesi ye-IP yomxhasi iyaziwa, uqwalaselo lwenziwa ngalo myalelo ulandelayo:
sudo ufw allow from IP_Address to any port 3389Ungavumela uqhagamshelo kuyo nayiphi na i-IP ngolu hlobo:
sudo ufw allow 3389Iprotocol ye-RDP ixhasa uguqulelo oluntsonkothileyo, kodwa ukuveza iseva ye-Xrdp kuthungelwano lukawonke-wonke luluvo olubi. Ukuba umxhasi akanayo i-IP esisigxina, umncedisi makamamele kuphela inginginya yasekhaya ukunyusa ukhuseleko. Kungcono ukufikelela kuyo ngetonela ye-SSH, eya kuthi iqondise ngokukhuselekileyo itrafikhi kwikhompyuter yomxhasi. Sinendlela efanayo ye VNC iseva.
Iqhagamshela kwiseva yeRDP
Ukusebenza kunye nemeko-bume yedesktop, kungcono ukwenza umsebenzisi owahlukileyo ongenalungelo:
sudo adduser rdpuser 
Masiyongeze umsebenzisi kwiqela le-sudo ukuze akwazi ukwenza imisebenzi enxulumene nolawulo. Ukuba akukho mfuneko injalo, ungatsiba eli nyathelo:
sudo gpasswd -a rdpuser sudoUngaqhagamshela kwiseva usebenzisa nawuphi na umxhasi we-RDP, kuquka i-Windows Remote Desktop Services client. Ukuba i-Xrdp imamele ujongano lwangaphandle, akukho zenzo zongezelelweyo ziya kufuneka. Kwanele ukucacisa idilesi ye-IP ye-VPS, igama lomsebenzisi kunye negama lokugqitha kwiisethingi zokudibanisa. Emva kokudibanisa, siza kubona into enje:

Emva kokucwangciswa kokuqala kwendawo yedesktop, siya kufumana idesktop epheleleyo. Njengoko ubona, ayidli izixhobo ezininzi, nangona yonke into iya kuxhomekeka kwizicelo ezisetyenzisiweyo.

Ukuba umncedisi we Xrdp umamele kuphela inginginya yasekhaya, itrafikhi kwikhompyuter yomxhasi kuyakufuneka ipakishwe kwitonela ye-SSH (sshd kufuneka isebenze kwiVPS). KwiWindows, unokusebenzisa umxhasi womzobo we-SSH (umzekelo, iPuTTY), kwaye kwiinkqubo zeUNIX ufuna into eluncedo ye-ssh:
ssh -L 3389:127.0.0.1:3389 -C -N -l rdpuser RDP_server_ipEmva kokuba itonela iqalisiwe, umxhasi weRDP akasayi kuphinda aqhagamshele kwiseva ekude, kodwa kumamkeli wendawo.
Kunzima ngakumbi ngezixhobo eziphathwayo: abathengi be-SSH abanakho ukuphakamisa itonela kuya kufuneka kuthengwe, kwaye kwi-iOS kunye ne-iPadOS, ukusebenza ngasemva kwezicelo zomntu wesithathu kunzima ngenxa yokulungelwa kakuhle kokusetyenziswa kwamandla. Kwi-iPhone kunye ne-iPad, awuyi kukwazi ukwenza itonela kwisicelo esahlukileyo; uya kufuna isicelo sokuvuna esinokuseka uqhagamshelo lwe-RDP nge-SSH. Njenge, umzekelo .
Umphathi weSeshini kunye neeSeshini zabasebenzisi
Ikhono lomsebenzi wabasebenzisi abaninzi liphunyezwa ngokuthe ngqo kwi-Xrdp iseva kwaye ayifuni ukucwangciswa okongeziweyo. Emva kokuqalisa inkonzo nge-systemd, inkqubo enye iqhuba kwimo ye-daemon, imamele kwi-port 3389 kwaye inxibelelane nge-localhost nomphathi weseshini.
ps aux |grep xrdp 
sudo netstat -ap |grep xrdp 
Umphathi weseshoni uqhele ukungabonakali kubasebenzisi, kuba igama lokungena kunye negama lokugqitha elixeliweyo kwizicwangciso zomthengi zigqithiselwa kuyo ngokuzenzekelayo. Ukuba oku akwenzeki okanye kukho impazamo ngexesha loqinisekiso, iwindow yokungena esebenzayo iya kuvela endaweni yedesktop.

Ukuqaliswa ngokuzenzekelayo komphathi weseshoni kuchazwe kwifayile /etc/default/xrdp, kwaye uqwalaselo lugcinwe kwi /etc/xrdp/sesman.ini. Ngokuzenzekelayo ijongeka ngolu hlobo:
[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]Akunyanzelekanga ukuba utshintshe nantoni na apha, kufuneka ucime ukungena ngamalungelo engcambu (AllowRootLogin=false). Kumsebenzisi ngamnye ogunyazisiweyo kwinkqubo, inkqubo ye-xrdp eyahlukileyo iqaliswe: ukuba uqhawula ngaphandle kokuphelisa iseshoni, iinkqubo zomsebenzisi ziya kuqhubeka ziqhuba ngokungagqibekanga, kwaye unokuxhuma kwiseshoni kwakhona. Izicwangciso zingatshintshwa kwifayile /etc/xrdp/sesman.ini ([Icandelo]).
Ukutshintshela ibhodi yezitshixo
Ngokuqhelekileyo akukho ngxaki ngebhodi eqhotyoshwayo enendlela-mbini, kodwa ngobeko lwebhodi yezitshixo yesiRashiya kuya kufuneka udlale ujikeleze kancinane (indawo yaseRussia kufuneka ibe sele ikhona. ). Masihlele useto lwebhodi yezitshixo kwiseva yeXrdp:
sudo nano /etc/xrdp/xrdp_keyboard.iniKufuneka udibanise le migca ilandelayo ekupheleni kwefayile yoqwalaselo:
[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,ruKonke okuseleyo kukugcina ifayile kwaye uqalise kwakhona i-Xrdp:
sudo systemctl restart xrdpNjengoko ubona, akunzima ukuseta iseva ye-RDP kwi-Linux VPS, kodwa Sele sixoxe ngokusekwa kweVNC. Ukongeza kwezi teknoloji, kukho enye inketho enomdla: inkqubo ye-X3Go isebenzisa iprotocol ye-NX 2 elungisiweyo. Siza kujongana nayo kupapasho olulandelayo.
umthombo: www.habr.com
