Š
Satura rÄdÄ«tÄjs:
GrafiskÄs vides instalÄÅ”ana
MÄs paÅemsim virtuÄlo maŔīnu ar Ubuntu Server 18.04 LTS ar diviem skaitļoÅ”anas kodoliem, Äetriem gigabaitiem RAM un divdesmit gigabaitu cieto disku (HDD). VÄjÄka konfigurÄcija nav piemÄrota grafiskajai darbvirsmai, lai gan tas ir atkarÄ«gs no risinÄmajiem uzdevumiem. Neaizmirstiet izmantot reklÄmas kodu Habrahabr10, lai saÅemtu 10% atlaidi savam pasÅ«tÄ«jumam.
Darbvirsmas vides instalÄÅ”ana ar visÄm atkarÄ«bÄm tiek veikta ar Å”Ädu komandu:
sudo apt-get install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
TÄpat kÄ iepriekÅ”ÄjÄ gadÄ«jumÄ, mÄs izvÄlÄjÄmies XFCE tÄ salÄ«dzinoÅ”i zemo skaitļoÅ”anas resursu prasÄ«bu dÄļ.
Servera rusifikÄcija un programmatÅ«ras instalÄÅ”ana
Bieži vien virtuÄlÄs maŔīnas tiek izvietotas tikai ar lokalizÄciju angļu valodÄ. DarbvirsmÄ var bÅ«t nepiecieÅ”ama krievu valoda, kuru ir viegli iestatÄ«t. Vispirms instalÄsim tulkojumus sistÄmas programmÄm:
sudo apt-get install language-pack-ru
IestatÄ«sim lokalizÄciju:
sudo update-locale LANG=ru_RU.UTF-8
To paÅ”u efektu var panÄkt, manuÄli rediÄ£Äjot /etc/default/locale.
GNOME un KDE lokalizÄcijai repozitorijÄ ir pakotnes language-pack-gnome-ru un language-pack-kde-ru ā tÄs bÅ«s nepiecieÅ”amas, ja izmantojat programmas no Ŕīm darbvirsmas vidÄm. ProgrammÄ XFCE tulkojumi tiek instalÄti kopÄ ar lietojumprogrammÄm. TÄlÄk varat instalÄt vÄrdnÄ«cas:
# Š”Š»Š¾Š²Š°ŃŠø Š“Š»Ń ŠæŃŠ¾Š²ŠµŃŠŗŠø Š¾ŃŃŠ¾Š³ŃŠ°ŃŠøŠø
sudo apt-get install hunspell hunspell-ru
# Š¢ŠµŠ·Š°ŃŃŃŃ Š“Š»Ń LibreOffice
sudo apt-get install mythes-ru
# ŠŠ½Š³Š»Š¾-ŃŃŃŃŠŗŠøŠ¹ ŃŠ»Š¾Š²Š°ŃŃ Š² ŃŠ¾ŃŠ¼Š°ŃŠµ DICT
sudo apt-get install mueller7-dict
TurklÄt dažÄm lietojumprogrammÄm var bÅ«t nepiecieÅ”ama tulkojumu instalÄÅ”ana:
# ŠŃŠ°ŃŠ·ŠµŃ 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
Tas pabeidz darbvirsmas vides sagatavoÅ”anu, atliek tikai konfigurÄt RDP serveri.
RDP servera instalÄÅ”ana un konfigurÄÅ”ana
Ubuntu krÄtuvÄs ir brÄ«vi izplatÄ«ts Xrdp serveris, kuru mÄs izmantosim:
sudo apt-get install xrdp
Ja viss noritÄja labi, serverim vajadzÄtu startÄt automÄtiski:
sudo systemctl status xrdp
Xrdp serveris darbojas ar xrdp lietotÄja tiesÄ«bÄm un pÄc noklusÄjuma izmanto /etc/ssl/private/ssl-cert-snakeoil.key sertifikÄtu, ko var aizstÄt ar savu. Lai piekļūtu faila lasÄ«Å”anai, jums jÄpievieno lietotÄjs ssl-cert grupai:
sudo adduser xrdp ssl-cert
NoklusÄjuma iestatÄ«jumus var atrast /etc/default/xrdp failÄ, un visi pÄrÄjie servera konfigurÄcijas faili atrodas /etc/xrdp direktorijÄ. Galvenie parametri ir failÄ xrdp.ini, kas nav jÄmaina. KonfigurÄcija ir labi dokumentÄta, un ir iekļautas atbilstoÅ”Äs rokasgrÄmatas:
man xrdp.ini
man xrdp
Atliek tikai rediÄ£Ät /etc/xrdp/startwm.sh skriptu, kas tiek izpildÄ«ts, kad tiek inicializÄta lietotÄja sesija. Vispirms izveidosim skripta rezerves kopiju no izplatÄ«Å”anas:
sudo mv /etc/xrdp/startwm.sh /etc/xrdp/startwm.b
sudo nano /etc/xrdp/startwm.sh
Lai palaistu XFCE darbvirsmas vidi, jums būs nepiecieŔams skripts, kas līdzīgs Ŕim:
#!/bin/sh
if [ -r /etc/default/locale ]; then
. /etc/default/locale
export LANG LANGUAGE
fi
exec /usr/bin/startxfce4
LÅ«dzu, Åemiet vÄrÄ: skriptos labÄk ir rakstÄ«t pilnu ceļu uz izpildÄmajiem failiem - tas ir labs ieradums. PadarÄ«sim skriptu izpildÄmu, un Å”ajÄ brÄ«dÄ« Xrdp servera iestatÄ«Å”anu var uzskatÄ«t par pabeigtu:
sudo chmod 755 /etc/xrdp/startwm.sh
RestartÄjiet serveri:
sudo systemctl restart xrdp
Ugunsmūra iestatīŔana
PÄc noklusÄjuma Xrdp klausÄs TCP portu 3389 visÄs saskarnÄs. AtkarÄ«bÄ no virtuÄlÄ servera konfigurÄcijas, iespÄjams, bÅ«s jÄkonfigurÄ Netfilter ugunsmÅ«ris. OperÄtÄjsistÄmÄ Linux tas parasti tiek darÄ«ts, izmantojot utilÄ«tu iptables, bet Ubuntu labÄk ir izmantot ufw. Ja klienta IP adrese ir zinÄma, konfigurÄÅ”ana tiek veikta ar Å”Ädu komandu:
sudo ufw allow from IP_Address to any port 3389
Varat atļaut savienojumus no jebkura IP, piemÄram:
sudo ufw allow 3389
RDP protokols atbalsta Å”ifrÄÅ”anu, taÄu Xrdp servera pakļauÅ”ana publiskajiem tÄ«kliem ir slikta ideja. Ja klientam nav fiksÄta IP, serverim ir jÄklausÄs tikai localhost, lai palielinÄtu droŔību. VislabÄk ir tai piekļūt, izmantojot SSH tuneli, kas droÅ”i novirzÄ«s trafiku no klienta datora. Mums ir lÄ«dzÄ«ga pieeja
Savienojuma izveide ar RDP serveri
Lai strÄdÄtu ar darbvirsmas vidi, labÄk ir izveidot atseviŔķu nepievilcÄ«gu lietotÄju:
sudo adduser rdpuser
Pievienosim lietotÄju sudo grupai, lai viÅÅ” varÄtu veikt ar administrÄÅ”anu saistÄ«tus uzdevumus. Ja Å”Ädas vajadzÄ«bas nav, varat izlaist Å”o darbÄ«bu:
sudo gpasswd -a rdpuser sudo
Varat izveidot savienojumu ar serveri, izmantojot jebkuru RDP klientu, tostarp iebÅ«vÄto Windows Remote Desktop Services klientu. Ja Xrdp klausÄs ÄrÄjo interfeisu, papildu darbÄ«bas nebÅ«s vajadzÄ«gas. Savienojuma iestatÄ«jumos pietiek norÄdÄ«t VPS IP adresi, lietotÄjvÄrdu un paroli. PÄc savienojuma izveides mÄs redzÄsim kaut ko lÄ«dzÄ«gu:
PÄc sÄkotnÄjÄs darbvirsmas vides iestatÄ«Å”anas mÄs iegÅ«sim pilnvÄrtÄ«gu darbvirsmu. KÄ redzat, tas nepatÄrÄ daudz resursu, lai gan viss bÅ«s atkarÄ«gs no izmantotajÄm lietojumprogrammÄm.
Ja Xrdp serveris klausÄs tikai localhost, trafika klienta datorÄ bÅ«s jÄiepako SSH tunelÄ« (sshd jÄdarbojas VPS). OperÄtÄjsistÄmÄ Windows varat izmantot grafisko SSH klientu (piemÄram, PuTTY), savukÄrt UNIX sistÄmÄs ir nepiecieÅ”ama ssh utilÄ«ta:
ssh -L 3389:127.0.0.1:3389 -C -N -l rdpuser RDP_server_ip
PÄc tuneļa inicializÄcijas RDP klients vairs nesavienosies ar attÄlo serveri, bet gan ar vietÄjo resursdatoru.
Ar mobilajÄm ierÄ«cÄm ir grÅ«tÄk: bÅ«s jÄiegÄdÄjas SSH klienti, kas spÄj pacelt tuneli, savukÄrt iOS un iPadOS operÄtÄjsistÄmÄs treÅ”o puÅ”u lietojumprogrammu fona darbÄ«ba ir apgrÅ«tinÄta pÄrÄk labÄs enerÄ£ijas patÄriÅa optimizÄcijas dÄļ. iPhone un iPad ierÄ«cÄs nevarÄsit izveidot tuneli atseviÅ”Ä·Ä lietojumprogrammÄ; jums bÅ«s nepiecieÅ”ama harvestera lietojumprogramma, kas pati var izveidot RDP savienojumu, izmantojot SSH. TÄdas kÄ, piemÄram
Sesiju pÄrvaldnieks un lietotÄju sesijas
VairÄku lietotÄju darba iespÄja tiek ieviesta tieÅ”i Xrdp serverÄ« un tai nav nepiecieÅ”ama papildu konfigurÄcija. PÄc pakalpojuma palaiÅ”anas, izmantojot systemd, viens process darbojas dÄmona režīmÄ, klausÄs portÄ 3389 un sazinÄs, izmantojot localhost ar sesijas pÄrvaldnieku.
ps aux |grep xrdp
sudo netstat -ap |grep xrdp
Sesiju pÄrvaldnieks parasti nav redzams lietotÄjiem, jo āāklienta iestatÄ«jumos norÄdÄ«tais pieteikÅ”anÄs vÄrds un parole tiek pÄrsÅ«tÄ«ti uz to automÄtiski. Ja tas nenotiek vai autentifikÄcijas laikÄ rodas kļūda, darbvirsmas vietÄ parÄdÄ«sies interaktÄ«vs pieteikÅ”anÄs logs.
Sesiju pÄrvaldnieka automÄtiskÄ palaiÅ”ana ir norÄdÄ«ta failÄ /etc/default/xrdp, un konfigurÄcija tiek saglabÄta mapÄ /etc/xrdp/sesman.ini. PÄc noklusÄjuma tas izskatÄs apmÄram Å”Ädi:
[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]
Å eit jums nekas nav jÄmaina, jums vienkÄrÅ”i ir jÄatspÄjo pieteikÅ”anÄs ar root tiesÄ«bÄm (AllowRootLogin=false). Katram sistÄmÄ autorizÄtam lietotÄjam tiek palaists atseviŔķs xrdp process: ja atvienojaties, nebeidzot sesiju, lietotÄja procesi turpinÄs darboties pÄc noklusÄjuma, un jÅ«s varat atkal izveidot savienojumu ar sesiju. IestatÄ«jumus var mainÄ«t failÄ /etc/xrdp/sesman.ini (sadaÄ¼Ä [Sesijas]).
TastatÅ«ras izkÄrtojumu pÄrslÄgÅ”ana
Ar divvirzienu starpliktuvi parasti nav problÄmu, taÄu ar krievu valodas tastatÅ«ras izkÄrtojumu bÅ«s nedaudz jÄpaspÄlÄjas (krievu lokalizÄcijai jau vajadzÄtu bÅ«t
sudo nano /etc/xrdp/xrdp_keyboard.ini
KonfigurÄcijas faila beigÄs jÄpievieno Å”Ädas rindas:
[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
Atliek tikai saglabÄt failu un restartÄt Xrdp:
sudo systemctl restart xrdp
KÄ redzat, nav grÅ«ti iestatÄ«t RDP serveri Linux VPS, taÄu
Avots: www.habr.com