В
Оглавление
Graafilise keskkonna installimine
Võtame Ubuntu Server 18.04 LTS-iga virtuaalmasina, millel on kaks arvutustuuma, neli gigabaiti muutmälu ja kahekümne gigabaidine kõvaketas (HDD). Nõrgem konfiguratsioon ei sobi graafilisele töölauale, kuigi see sõltub lahendatavatest ülesannetest. Ärge unustage kasutada sooduskoodi Habrahabr10, et saada oma tellimuselt 10% allahindlust.
Kõigi sõltuvustega töölauakeskkonna installimine toimub järgmise käsuga:
sudo apt-get install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
Nagu ka eelmisel juhul, valisime XFCE selle suhteliselt madalate arvutusressursside vajaduse tõttu.
Serveri venestamine ja tarkvara installeerimine
Sageli juurutatakse virtuaalseid masinaid ainult ingliskeelse lokaliseerimisega. Töölaual võib vaja minna vene keelt, mida on lihtne seadistada. Esmalt installime süsteemiprogrammide tõlked:
sudo apt-get install language-pack-ru
Seadistame lokaliseerimise:
sudo update-locale LANG=ru_RU.UTF-8
Sama efekti saab saavutada faili /etc/default/locale käsitsi redigeerimisega.
GNOME ja KDE lokaliseerimiseks on hoidlas paketid language-pack-gnome-ru ja language-pack-kde-ru – neid läheb vaja, kui kasutate nende töölauakeskkondade programme. XFCE-s installitakse tõlked koos rakendustega. Järgmisena saate installida sõnastikud:
# Словари для проверки орфографии
sudo apt-get install hunspell hunspell-ru
# Тезаурус для LibreOffice
sudo apt-get install mythes-ru
# Англо-русский словарь в формате DICT
sudo apt-get install mueller7-dict
Lisaks võib mõne rakendusprogrammi jaoks olla vajalik tõlgete installimine:
# Браузер 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
See lõpetab töölauakeskkonna ettevalmistamise, jääb üle vaid RDP-server konfigureerida.
RDP-serveri installimine ja konfigureerimine
Ubuntu hoidlates on vabalt levitatav Xrdp-server, mida kasutame:
sudo apt-get install xrdp
Kui kõik läks hästi, peaks server automaatselt käivituma:
sudo systemctl status xrdp
Xrdp server töötab xrdp kasutajaõigustega ja võtab vaikimisi sertifikaadi /etc/ssl/private/ssl-cert-snakeoil.key, mille saab asendada enda omaga. Faili lugemiseks juurdepääsu saamiseks peate lisama kasutaja ssl-cert rühma:
sudo adduser xrdp ssl-cert
Vaikesätted leiate failist /etc/default/xrdp ja kõik muud serveri konfiguratsioonifailid asuvad kataloogis /etc/xrdp. Peamised parameetrid on failis xrdp.ini, mida pole vaja muuta. Konfiguratsioon on hästi dokumenteeritud ja lisatud on vastavad juhised:
man xrdp.ini
man xrdp
Jääb üle vaid redigeerida skripti /etc/xrdp/startwm.sh, mis käivitatakse kasutajaseansi initsialiseerimisel. Kõigepealt teeme distributsioonist skriptist varukoopia:
sudo mv /etc/xrdp/startwm.sh /etc/xrdp/startwm.b
sudo nano /etc/xrdp/startwm.sh
XFCE töölauakeskkonna käivitamiseks vajate umbes sellist skripti:
#!/bin/sh
if [ -r /etc/default/locale ]; then
. /etc/default/locale
export LANG LANGUAGE
fi
exec /usr/bin/startxfce4
Pange tähele: skriptides on parem kirjutada käivitatavate failide täielik tee - see on hea harjumus. Teeme skripti käivitatavaks ja siinkohal võib Xrdp-serveri häälestuse lugeda lõpetatuks:
sudo chmod 755 /etc/xrdp/startwm.sh
Taaskäivitage server:
sudo systemctl restart xrdp
Tulemüüri seadistamine
Vaikimisi kuulab Xrdp kõigis liidestes TCP-porti 3389. Sõltuvalt virtuaalserveri konfiguratsioonist peate võib-olla konfigureerima Netfilteri tulemüüri. Linuxis tehakse seda tavaliselt iptablesi utiliidi abil, kuid Ubuntu puhul on parem kasutada ufw-d. Kui kliendi IP-aadress on teada, tehakse konfigureerimine järgmise käsuga:
sudo ufw allow from IP_Address to any port 3389
Saate lubada ühendusi mis tahes IP-st, näiteks järgmiselt:
sudo ufw allow 3389
RDP-protokoll toetab krüptimist, kuid Xrdp-serveri avamine avalikes võrkudes on halb mõte. Kui kliendil pole fikseeritud IP-d, peaks server turvalisuse suurendamiseks kuulama ainult kohalikku hosti. Parim on sellele juurde pääseda SSH-tunneli kaudu, mis suunab liikluse turvaliselt ümber klientarvutist. Meil on sarnane lähenemine
Ühenduse loomine RDP serveriga
Töölauakeskkonnaga töötamiseks on parem luua eraldi privilegeerimata kasutaja:
sudo adduser rdpuser
Lisame kasutaja sudo gruppi, et ta saaks täita administreerimisega seotud ülesandeid. Kui sellist vajadust pole, võite selle sammu vahele jätta:
sudo gpasswd -a rdpuser sudo
Saate serveriga ühenduse luua mis tahes RDP-kliendi, sealhulgas sisseehitatud Windows Remote Desktop Services kliendi abil. Kui Xrdp kuulab välist liidest, pole lisatoiminguid vaja. Piisab VPS-i IP-aadressi, kasutajanime ja parooli määramisest ühenduse seadetes. Pärast ühendamist näeme midagi sellist:
Pärast töölauakeskkonna esialgset seadistamist saame täisväärtusliku töölaua. Nagu näete, ei kuluta see palju ressursse, kuigi kõik sõltub kasutatavatest rakendustest.
Kui Xrdp-server kuulab ainult kohalikku hosti, tuleb klientarvuti liiklus pakkida SSH-tunnelisse (sshd peab töötama VPS-is). Windowsis saate kasutada graafilist SSH-klienti (nt PuTTY) ja UNIX-süsteemides vajate ssh-utiliiti:
ssh -L 3389:127.0.0.1:3389 -C -N -l rdpuser RDP_server_ip
Pärast tunneli lähtestamist ei loo RDP klient enam ühendust kaugserveriga, vaid kohaliku hostiga.
Mobiilseadmetega on keerulisem: tuleb osta SSH-kliendid, mis on võimelised tunnelit tõstma ning iOS-is ja iPadOS-is on kolmandate osapoolte rakenduste taustatöö keeruline energiatarbimise liiga hea optimeerimise tõttu. IPhone'is ja iPadis ei saa te tunnelit luua eraldi rakenduses; vajate harvesterirakendust, mis suudab SSH kaudu ise luua RDP-ühenduse. Nagu näiteks
Seansihaldur ja kasutajaseansid
Mitme kasutajaga töötamise võimalus rakendatakse otse Xrdp-serveris ja see ei vaja täiendavat konfigureerimist. Pärast teenuse käivitamist systemd kaudu töötab üks protsess deemoni režiimis, kuulab porti 3389 ja suhtleb kohaliku hosti kaudu seansihalduriga.
ps aux |grep xrdp
sudo netstat -ap |grep xrdp
Seansihaldur ei ole tavaliselt kasutajatele nähtav, kuna kliendi seadetes määratud sisselogimine ja parool kantakse sinna automaatselt. Kui seda ei juhtu või autentimisel ilmneb tõrge, ilmub töölaua asemel interaktiivne sisselogimisaken.
Seansihalduri automaatne käivitamine on määratud failis /etc/default/xrdp ja konfiguratsioon salvestatakse faili /etc/xrdp/sesman.ini. Vaikimisi näeb see välja umbes selline:
[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]
Siin ei pea te midagi muutma, peate lihtsalt juurõigustega sisselogimise keelama (AllowRootLogin=false). Iga süsteemis volitatud kasutaja jaoks käivitatakse eraldi xrdp-protsess: kui katkestate ühenduse seanssi lõpetamata, jätkavad kasutajaprotsessid vaikimisi töötamist ja saate seansiga uuesti ühenduse luua. Sätteid saab muuta failis /etc/xrdp/sesman.ini (jaotis [Seansid]).
Klaviatuuripaigutuste vahetamine
Kahesuunalise lõikepuhvriga tavaliselt probleeme pole, kuid venekeelse klaviatuuripaigutusega peate natuke mängima (vene lokaal peaks juba olema
sudo nano /etc/xrdp/xrdp_keyboard.ini
Konfiguratsioonifaili lõppu peate lisama järgmised read:
[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
Jääb üle vaid fail salvestada ja Xrdp taaskäivitada:
sudo systemctl restart xrdp
Nagu näete, pole RDP-serveri seadistamine Linuxi VPS-is keeruline, kuid
Allikas: www.habr.com