VPS ar Linux gyda rhyngwyneb graffigol: lansio gweinydd RDP ar Ubuntu 18.04

VPS ar Linux gyda rhyngwyneb graffigol: lansio gweinydd RDP ar Ubuntu 18.04
В erthygl flaenorol buom yn trafod rhedeg gweinydd VNC ar beiriant rhithwir o unrhyw fath. Mae gan yr opsiwn hwn lawer o anfanteision, a'r prif un yw'r gofynion uchel ar gyfer trwygyrch sianeli trosglwyddo data. Heddiw, byddwn yn ceisio cysylltu â bwrdd gwaith graffigol ar Linux trwy RDP (Protocol Penbwrdd Pell). Mae'r system VNC yn seiliedig ar drawsyrru araeau o bicseli gan ddefnyddio'r protocol RFB (Framebuffer Remote), ac mae RDP yn caniatáu ichi anfon cyntefig graffeg mwy cymhleth a gorchmynion lefel uchel. Fe'i defnyddir fel arfer i gynnal Gwasanaethau Penbwrdd Pell ar Windows, ond mae gweinyddwyr ar gyfer Linux ar gael hefyd.

Gemau:

Gosod yr amgylchedd graffigol
Russification y gweinydd a gosod meddalwedd
Gosod a ffurfweddu gweinydd RDP
Gosod wal dân
Cysylltu â gweinydd RDP
Rheolwr Sesiwn a Sesiynau Defnyddwyr
Newid gosodiadau bysellfwrdd

Gosod yr amgylchedd graffigol

Byddwn yn cymryd peiriant rhithwir gyda Ubuntu Server 18.04 LTS gyda dau graidd cyfrifiadurol, pedwar gigabeit o RAM a gyriant caled ugain gigabyte (HDD). Nid yw cyfluniad gwannach yn addas ar gyfer bwrdd gwaith graffigol, er bod hyn yn dibynnu ar y tasgau sy'n cael eu datrys. Peidiwch ag anghofio defnyddio cod promo Habrahabr10 i gael gostyngiad o 10% ar eich archeb.

VPS ar Linux gyda rhyngwyneb graffigol: lansio gweinydd RDP ar Ubuntu 18.04
Mae gosod yr amgylchedd bwrdd gwaith gyda phob dibyniaeth yn cael ei wneud gyda'r gorchymyn canlynol:

sudo apt-get install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils

Fel yn yr achos blaenorol, dewisom XFCE oherwydd ei ofynion adnoddau cyfrifiadurol cymharol isel.

Russification y gweinydd a gosod meddalwedd

Yn aml, dim ond gyda lleoleiddio Saesneg y defnyddir peiriannau rhithwir. Ar y bwrdd gwaith efallai y bydd angen Rwsieg arnoch, sy'n hawdd ei sefydlu. Yn gyntaf, gadewch i ni osod cyfieithiadau ar gyfer rhaglenni system:

sudo apt-get install language-pack-ru

Gadewch i ni sefydlu lleoleiddio:

sudo update-locale LANG=ru_RU.UTF-8

Gellir cyflawni'r un effaith trwy olygu'r /etc/default/locale â llaw.

Ar gyfer lleoleiddio GNOME a KDE, mae gan yr ystorfa becynnau iaith-pecyn-gnome-ru a phecynnau iaith-kde-ru - bydd eu hangen arnoch os ydych yn defnyddio rhaglenni o'r amgylcheddau bwrdd gwaith hyn. Yn XFCE, mae cyfieithiadau yn cael eu gosod gyda chymwysiadau. Nesaf gallwch chi osod y geiriaduron:

# Словари для проверки орфографии
sudo apt-get install hunspell hunspell-ru

# Тезаурус для LibreOffice
sudo apt-get install mythes-ru

# Англо-русский словарь в формате DICT
sudo apt-get install mueller7-dict

Yn ogystal, efallai y bydd angen gosod cyfieithiadau ar gyfer rhai rhaglenni cais:

# Браузер 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

Mae hyn yn cwblhau'r gwaith o baratoi'r amgylchedd bwrdd gwaith, y cyfan sydd ar ôl yw ffurfweddu'r gweinydd RDP.

Gosod a ffurfweddu gweinydd RDP

Mae gan y storfeydd Ubuntu weinydd Xrdp a ddosberthir yn rhydd, y byddwn yn ei ddefnyddio:

sudo apt-get install xrdp

Os aeth popeth yn iawn, dylai'r gweinydd ddechrau'n awtomatig:

sudo systemctl status xrdp

VPS ar Linux gyda rhyngwyneb graffigol: lansio gweinydd RDP ar Ubuntu 18.04
Mae'r gweinydd Xrdp yn rhedeg gyda hawliau defnyddiwr xrdp ac yn ddiofyn mae'n cymryd y dystysgrif /etc/ssl/private/ssl-cert-snakeoil.key, y gellir ei disodli â'ch un chi. I gael mynediad i ddarllen y ffeil, mae angen i chi ychwanegu'r defnyddiwr at y grŵp ssl-cert:

sudo adduser xrdp ssl-cert

Gellir dod o hyd i'r gosodiadau diofyn yn y ffeil /etc/default/xrdp, ac mae'r holl ffeiliau cyfluniad gweinydd arall wedi'u lleoli yn y cyfeiriadur /etc/xrdp. Mae'r prif baramedrau yn y ffeil xrdp.ini, nad oes angen ei newid. Mae'r ffurfwedd wedi'i dogfennu'n dda, ac mae'r manpages cyfatebol wedi'u cynnwys:

man xrdp.ini
man xrdp

Y cyfan sydd ar ôl yw golygu'r sgript /etc/xrdp/startwm.sh, a weithredir pan ddechreuir y sesiwn defnyddiwr. Yn gyntaf, gadewch i ni wneud copi wrth gefn o'r sgript o'r dosbarthiad:

sudo mv /etc/xrdp/startwm.sh /etc/xrdp/startwm.b
sudo nano /etc/xrdp/startwm.sh

I gychwyn amgylchedd bwrdd gwaith XFCE, bydd angen sgript fel hyn arnoch chi:

#!/bin/sh
if [ -r /etc/default/locale ]; then
. /etc/default/locale
export LANG LANGUAGE
fi
exec /usr/bin/startxfce4

Sylwch: mewn sgriptiau mae'n well ysgrifennu'r llwybr llawn i'r ffeiliau gweithredadwy - mae hwn yn arfer da. Gadewch i ni wneud y sgript yn weithredadwy ac ar y pwynt hwn gellir ystyried gosodiad y gweinydd Xrdp yn gyflawn:

sudo chmod 755 /etc/xrdp/startwm.sh

Ailgychwyn y gweinydd:

sudo systemctl restart xrdp

Gosod wal dân

Yn ddiofyn, mae Xrdp yn gwrando ar borthladd TCP 3389 ar bob rhyngwyneb. Yn dibynnu ar gyfluniad y gweinydd rhithwir, efallai y bydd angen i chi ffurfweddu wal dân Netfilter. Ar Linux gwneir hyn fel arfer gan ddefnyddio'r cyfleustodau iptables, ond ar Ubuntu mae'n well defnyddio ufw. Os yw cyfeiriad IP y cleient yn hysbys, cynhelir cyfluniad gyda'r gorchymyn canlynol:

sudo ufw allow from IP_Address to any port 3389

Gallwch ganiatáu cysylltiadau o unrhyw IP fel hyn:

sudo ufw allow 3389

Mae'r protocol RDP yn cefnogi amgryptio, ond mae datgelu'r gweinydd Xrdp i rwydweithiau cyhoeddus yn syniad drwg. Os nad oes gan y cleient IP sefydlog, dim ond i gynyddu diogelwch y dylai'r gweinydd wrando ar localhost. Mae'n well cael mynediad iddo trwy dwnnel SSH, a fydd yn ailgyfeirio traffig yn ddiogel o gyfrifiadur y cleient. Mae gennym ddull tebyg a ddefnyddiwyd yn yr erthygl flaenorol ar gyfer gweinydd VNC.

Cysylltu â gweinydd RDP

I weithio gyda'r amgylchedd bwrdd gwaith, mae'n well creu defnyddiwr difreintiedig ar wahân:

sudo adduser rdpuser

VPS ar Linux gyda rhyngwyneb graffigol: lansio gweinydd RDP ar Ubuntu 18.04
Gadewch i ni ychwanegu'r defnyddiwr at y grŵp sudo fel y gall gyflawni tasgau gweinyddol. Os nad oes angen o'r fath, gallwch hepgor y cam hwn:

sudo gpasswd -a rdpuser sudo

Gallwch gysylltu â'r gweinydd gan ddefnyddio unrhyw gleient RDP, gan gynnwys y cleient Windows Remote Desktop Services adeiledig. Os yw Xrdp yn gwrando ar y rhyngwyneb allanol, ni fydd angen unrhyw gamau gweithredu ychwanegol. Mae'n ddigon nodi cyfeiriad IP VPS, enw defnyddiwr a chyfrinair yn y gosodiadau cysylltiad. Ar ôl cysylltu, byddwn yn gweld rhywbeth fel hyn:

VPS ar Linux gyda rhyngwyneb graffigol: lansio gweinydd RDP ar Ubuntu 18.04
Ar ôl gosodiad cychwynnol yr amgylchedd bwrdd gwaith, byddwn yn cael bwrdd gwaith llawn. Fel y gallwch weld, nid yw'n defnyddio llawer o adnoddau, er y bydd popeth yn dibynnu ar y cymwysiadau a ddefnyddir.

VPS ar Linux gyda rhyngwyneb graffigol: lansio gweinydd RDP ar Ubuntu 18.04
Os yw'r gweinydd Xrdp yn gwrando ar localhost yn unig, bydd yn rhaid i'r traffig ar gyfrifiadur y cleient gael ei becynnu i mewn i dwnnel SSH (rhaid i sshd fod yn rhedeg ar y VPS). Ar Windows, gallwch ddefnyddio cleient SSH graffigol (er enghraifft, PuTTY), ac ar systemau UNIX mae angen y cyfleustodau ssh arnoch chi:

ssh -L 3389:127.0.0.1:3389 -C -N -l rdpuser RDP_server_ip

Ar ôl i'r twnnel gael ei gychwyn, ni fydd y cleient RDP bellach yn cysylltu â'r gweinydd pell, ond â'r gwesteiwr lleol.

Mae'n anoddach gyda dyfeisiau symudol: bydd yn rhaid prynu cleientiaid SSH sy'n gallu codi twnnel, ac yn iOS ac iPadOS, mae gweithrediad cefndir cymwysiadau trydydd parti yn anodd oherwydd optimeiddio rhy dda o ddefnydd ynni. Ar iPhone ac iPad, ni fyddwch yn gallu creu twnnel mewn cymhwysiad ar wahân; bydd angen cymhwysiad cynaeafwr arnoch a all ei hun sefydlu cysylltiad RDP trwy SSH. Megis, er enghraifft Pro Pellter.

Rheolwr Sesiwn a Sesiynau Defnyddwyr

Mae'r gallu i waith aml-ddefnyddiwr yn cael ei weithredu'n uniongyrchol yn y gweinydd Xrdp ac nid oes angen cyfluniad ychwanegol. Ar ôl cychwyn y gwasanaeth trwy systemd, mae un broses yn rhedeg yn y modd daemon, yn gwrando ar borthladd 3389 ac yn cyfathrebu trwy localhost gyda'r rheolwr sesiwn.

ps aux |grep xrdp

VPS ar Linux gyda rhyngwyneb graffigol: lansio gweinydd RDP ar Ubuntu 18.04

sudo netstat -ap |grep xrdp

VPS ar Linux gyda rhyngwyneb graffigol: lansio gweinydd RDP ar Ubuntu 18.04
Fel arfer nid yw'r rheolwr sesiwn yn weladwy i ddefnyddwyr, oherwydd mae'r mewngofnodi a'r cyfrinair a nodir yng ngosodiadau'r cleient yn cael eu trosglwyddo iddo'n awtomatig. Os na fydd hyn yn digwydd neu os oes gwall yn ystod y dilysu, bydd ffenestr mewngofnodi ryngweithiol yn ymddangos yn lle'r bwrdd gwaith.

VPS ar Linux gyda rhyngwyneb graffigol: lansio gweinydd RDP ar Ubuntu 18.04
Mae lansiad awtomatig y rheolwr sesiwn wedi'i nodi yn y ffeil /etc/default/xrdp, ac mae'r ffurfwedd yn cael ei storio yn /etc/xrdp/sesman.ini. Yn ddiofyn mae'n edrych yn rhywbeth fel hyn:

[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]

Nid oes rhaid i chi newid unrhyw beth yma, mae'n rhaid i chi analluogi mewngofnodi gyda hawliau gwraidd (AllowRootLogin = ffug). Ar gyfer pob defnyddiwr a awdurdodwyd yn y system, mae proses xrdp ar wahân yn cael ei lansio: os byddwch yn datgysylltu heb ddod â'r sesiwn i ben, bydd prosesau defnyddwyr yn parhau i redeg yn ddiofyn, a gallwch gysylltu â'r sesiwn eto. Gellir newid gosodiadau yn y ffeil /etc/xrdp/sesman.ini ([Sesiynau] adran).

Newid gosodiadau bysellfwrdd

Fel arfer nid oes unrhyw broblemau gyda chlipfwrdd dwy ffordd, ond gyda chynllun bysellfwrdd Rwsia bydd yn rhaid i chi chwarae o gwmpas ychydig (dylai'r locale Rwsia fod eisoes wedi'i osod). Gadewch i ni olygu gosodiadau bysellfwrdd y gweinydd Xrdp:

sudo nano /etc/xrdp/xrdp_keyboard.ini

Mae angen i chi ychwanegu'r llinellau canlynol at ddiwedd y ffeil ffurfweddu:

[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

Y cyfan sydd ar ôl yw achub y ffeil ac ailgychwyn Xrdp:

sudo systemctl restart xrdp

Fel y gallwch weld, nid yw'n anodd sefydlu gweinydd RDP ar Linux VPS, ond erthygl flaenorol Rydym eisoes wedi trafod gosodiad VNC. Yn ogystal â'r technolegau hyn, mae opsiwn diddorol arall: y system X3Go gan ddefnyddio protocol NX 2 wedi'i addasu. Byddwn yn ymdrin ag ef yn y cyhoeddiad nesaf.

VPS ar Linux gyda rhyngwyneb graffigol: lansio gweinydd RDP ar Ubuntu 18.04

Ffynhonnell: hab.com

Ychwanegu sylw