VPS sou Linux ak yon koòdone grafik: lanse yon sèvè RDP sou Ubuntu 18.04

VPS sou Linux ak yon koòdone grafik: lanse yon sèvè RDP sou Ubuntu 18.04
В atik anvan nou te diskite sou kouri yon sèvè VNC sou yon machin vityèl nenpòt kalite. Opsyon sa a gen yon anpil nan dezavantaj, youn nan prensipal yo se kondisyon ki wo pou debi a nan chanèl transmisyon done. Jodi a nou pral eseye konekte ak yon Desktop grafik sou Linux atravè RDP (Remote Desktop Protocol). Sistèm VNC a baze sou transmèt etalaj piksèl lè l sèvi avèk pwotokòl RFB (Remote Framebuffer), ak RDP pèmèt ou voye primitif grafik pi konplèks ak kòmandman wo nivo. Li se tipikman itilize òganize Sèvis Desktop Remote sou Windows, men serveurs pou Linux yo disponib tou.

Table of contents:

Enstale anviwònman grafik la
Russifikasyon nan sèvè a ak enstalasyon lojisyèl
Enstale ak konfigirasyon yon sèvè RDP
Mete kanpe yon firewall
Konekte ak yon sèvè RDP
Manadjè Sesyon ak Sesyon Itilizatè yo
Chanje layout klavye

Enstale anviwònman grafik la

Nou pral pran yon machin vityèl ak Ubuntu Server 18.04 LTS ak de nwayo informatique, kat jigokte RAM ak yon ven jigokte kondwi difisil (HDD). Yon konfigirasyon ki pi fèb pa apwopriye pou yon Desktop grafik, byenke sa depann de travay yo te rezoud. Pa bliye sèvi ak kòd promo Habrahabr10 pou jwenn yon rabè 10% sou lòd ou a.

VPS sou Linux ak yon koòdone grafik: lanse yon sèvè RDP sou Ubuntu 18.04
Enstale anviwònman Desktop la ak tout depandans yo fè ak lòd sa a:

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

Kòm nan ka anvan an, nou te chwazi XFCE akòz kondisyon resous enfòmatik relativman ba li yo.

Russifikasyon nan sèvè a ak enstalasyon lojisyèl

Souvan machin vityèl yo deplwaye sèlman ak lokalizasyon angle. Sou Desktop la ou ka bezwen Ris, ki se fasil yo mete kanpe. Premyèman, ann enstale tradiksyon pou pwogram sistèm yo:

sudo apt-get install language-pack-ru

Ann mete lokalizasyon:

sudo update-locale LANG=ru_RU.UTF-8

Menm efè a ka reyalize pa manyèlman modifye /etc/default/locale la.

Pou lokalizasyon GNOME ak KDE, repozitwa a gen pakè language-pack-gnome-ru ak language-pack-kde-ru - w ap bezwen yo si w itilize pwogram ki soti nan anviwònman Desktop sa yo. Nan XFCE, tradiksyon yo enstale ak aplikasyon yo. Apre sa, ou ka enstale diksyonè yo:

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

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

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

Anplis de sa, enstalasyon tradiksyon ka nesesè pou kèk pwogram aplikasyon:

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

Sa a konplete preparasyon an nan anviwònman an Desktop, tout sa ki rete se configured sèvè RDP la.

Enstale ak konfigirasyon yon sèvè RDP

Repozitwa Ubuntu yo gen yon sèvè Xrdp distribye lib, ke nou pral itilize:

sudo apt-get install xrdp

Si tout bagay ale byen, sèvè a ta dwe kòmanse otomatikman:

sudo systemctl status xrdp

VPS sou Linux ak yon koòdone grafik: lanse yon sèvè RDP sou Ubuntu 18.04
Sèvè Xrdp la kouri ak dwa itilizatè xrdp epi pa default pran sètifika /etc/ssl/private/ssl-cert-snakeoil.key, ki ka ranplase ak pwòp ou a. Pou gen aksè a li dosye a, ou bezwen ajoute itilizatè a nan gwoup la ssl-cert:

sudo adduser xrdp ssl-cert

Ou ka jwenn paramèt default yo nan /etc/default/xrdp fichye a, epi tout lòt fichye konfigirasyon sèvè yo sitiye nan /etc/xrdp anyè. Paramèt prensipal yo se nan dosye a xrdp.ini, ki pa bezwen chanje. Konfigirasyon an byen dokimante, epi paj man ki koresponn yo enkli:

man xrdp.ini
man xrdp

Tout sa ki rete se modifye script /etc/xrdp/startwm.sh, ki egzekite lè sesyon itilizatè a inisyalize. Premyèman, ann fè yon kopi backup nan script la soti nan distribisyon an:

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

Pou kòmanse anviwònman Desktop XFCE a, w ap bezwen yon script yon bagay tankou sa a:

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

Tanpri sonje: nan Scripts li se pi bon yo ekri chemen an konplè nan dosye yo ègzèkutabl - sa a se yon bon abitid. Ann fè script la ègzekutabl epi nan pwen sa a konfigirasyon sèvè Xrdp la ka konsidere kòm konplè:

sudo chmod 755 /etc/xrdp/startwm.sh

Rekòmanse sèvè a:

sudo systemctl restart xrdp

Mete kanpe yon firewall

Pa default, Xrdp koute pò TCP 3389 sou tout interfaces. Tou depan de konfigirasyon sèvè vityèl la, ou ka bezwen configured yon firewall Netfilter. Sou Linux sa a anjeneral fè lè l sèvi avèk sèvis piblik iptables la, men sou Ubuntu li pi bon pou itilize ufw. Si yo konnen adrès IP kliyan an, konfigirasyon an fèt ak lòd sa a:

sudo ufw allow from IP_Address to any port 3389

Ou ka pèmèt koneksyon soti nan nenpòt IP tankou sa a:

sudo ufw allow 3389

Pwotokòl RDP a sipòte chifreman, men ekspoze sèvè Xrdp a nan rezo piblik se yon move lide. Si kliyan an pa gen yon IP fiks, sèvè a ta dwe sèlman koute localhost pou ogmante sekirite. Li pi bon jwenn aksè nan li atravè yon tinèl SSH, ki pral an sekirite redireksyon trafik soti nan òdinatè kliyan an. Nou gen yon apwòch menm jan an itilize nan atik anvan an pou sèvè VNC.

Konekte ak yon sèvè RDP

Pou travay ak anviwònman Desktop la, li pi bon pou kreye yon itilizatè apa ki pa gen privilèj:

sudo adduser rdpuser

VPS sou Linux ak yon koòdone grafik: lanse yon sèvè RDP sou Ubuntu 18.04
Ann ajoute itilizatè a nan gwoup sudo pou li ka fè travay ki gen rapò ak administrasyon an. Si pa gen okenn bezwen sa yo, ou ka sote etap sa a:

sudo gpasswd -a rdpuser sudo

Ou ka konekte ak sèvè a lè l sèvi avèk nenpòt kliyan RDP, ki gen ladan kliyan Windows Remote Desktop Services entegre. Si Xrdp ap koute koòdone ekstèn lan, pa gen okenn aksyon adisyonèl yo pral bezwen. Li se ase yo presize adrès la IP VPS, non itilizatè ak modpas nan anviwònman yo koneksyon. Apre konekte, nou pral wè yon bagay tankou sa a:

VPS sou Linux ak yon koòdone grafik: lanse yon sèvè RDP sou Ubuntu 18.04
Apre konfigirasyon inisyal la nan anviwònman an Desktop, nou pral jwenn yon Desktop plen véritable. Kòm ou ka wè, li pa konsome anpil resous, byenke tout bagay pral depann de aplikasyon yo itilize.

VPS sou Linux ak yon koòdone grafik: lanse yon sèvè RDP sou Ubuntu 18.04
Si sèvè Xrdp la koute sèlman localhost, trafik la sou òdinatè kliyan an pral gen yo dwe pake nan yon tinèl SSH (sshd dwe kouri sou VPS la). Sou Windows, ou ka itilize yon kliyan grafik SSH (pa egzanp, PuTTY), epi sou sistèm UNIX ou bezwen sèvis piblik ssh:

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

Apre tinèl la inisyalize, kliyan RDP la p ap konekte ak sèvè aleka a ankò, men ak lame lokal la.

Li pi difisil ak aparèy mobil: kliyan SSH ki kapab ogmante yon tinèl pral oblije achte, ak nan iOS ak iPadOS, operasyon an background nan aplikasyon pou twazyèm pati difisil akòz optimize twò bon nan konsomasyon enèji. Sou iPhone ak iPad, ou pa pral kapab kreye yon tinèl nan yon aplikasyon separe; w ap bezwen yon aplikasyon harvester ki ka li menm etabli yon koneksyon RDP atravè SSH. Tankou, pou egzanp Remoter Pro.

Manadjè Sesyon ak Sesyon Itilizatè yo

Kapasite nan travay plizyè itilizatè aplike dirèkteman nan sèvè Xrdp la epi li pa mande pou konfigirasyon adisyonèl. Apre yo fin kòmanse sèvis la atravè systemd, yon pwosesis kouri nan mòd daemon, koute sou pò 3389 epi kominike atravè localhost ak manadjè sesyon an.

ps aux |grep xrdp

VPS sou Linux ak yon koòdone grafik: lanse yon sèvè RDP sou Ubuntu 18.04

sudo netstat -ap |grep xrdp

VPS sou Linux ak yon koòdone grafik: lanse yon sèvè RDP sou Ubuntu 18.04
Manadjè sesyon an anjeneral pa vizib pou itilizatè yo, paske login ak modpas ki espesifye nan anviwònman kliyan yo transfere nan li otomatikman. Si sa pa rive oswa si gen yon erè pandan otantifikasyon, yon fenèt konekte entèaktif ap parèt olye de Desktop la.

VPS sou Linux ak yon koòdone grafik: lanse yon sèvè RDP sou Ubuntu 18.04
Otomatik lansman manadjè sesyon an espesifye nan /etc/default/xrdp fichye a, epi konfigirasyon an estoke nan /etc/xrdp/sesman.ini. Pa default li sanble yon bagay tankou sa a:

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

Ou pa oblije chanje anyen isit la, ou jis oblije enfim login ak dwa rasin (AllowRootLogin=false). Pou chak itilizatè otorize nan sistèm nan, yon pwosesis separe xrdp lanse: si ou dekonekte san yo pa fini sesyon an, pwosesis itilizatè yo ap kontinye kouri pa default, epi ou ka konekte nan sesyon an ankò. Anviwònman yo ka chanje nan fichye /etc/xrdp/sesman.ini (seksyon [Sesyon]).

Chanje layout klavye

Anjeneral pa gen pwoblèm ak yon clipboard de-fason, men ak layout klavye Ris la ou pral oblije jwe yon ti kras (lokal Ris la ta dwe deja enstale). Ann edite paramèt klavye sèvè Xrdp la:

sudo nano /etc/xrdp/xrdp_keyboard.ini

Ou bezwen ajoute liy sa yo nan fen dosye konfigirasyon an:

[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

Tout sa ki rete se sove fichye a epi rekòmanse Xrdp:

sudo systemctl restart xrdp

Kòm ou ka wè, li pa difisil yo mete kanpe yon sèvè RDP sou yon Linux VPS, men atik anvan Nou te deja diskite VNC konfigirasyon an. Anplis de teknoloji sa yo, gen yon lòt opsyon enteresan: sistèm X3Go lè l sèvi avèk yon pwotokòl NX 2 modifye. Nou pral fè fas ak li nan pwochen piblikasyon an.

VPS sou Linux ak yon koòdone grafik: lanse yon sèvè RDP sou Ubuntu 18.04

Sous: www.habr.com

Add nouvo kòmantè