VPS sa Linux nga adunay usa ka graphical interface: paglansad sa usa ka VNC server sa Ubuntu 18.04

VPS sa Linux nga adunay usa ka graphical interface: paglansad sa usa ka VNC server sa Ubuntu 18.04
Ang ubang mga tiggamit nag-abang sa medyo barato nga VPS nga adunay Windows aron magpadagan sa mga serbisyo sa layo nga desktop. Ang sama nga mahimo sa Linux nga wala mag-host sa imong kaugalingon nga hardware sa usa ka data center o pag-abang sa usa ka dedikado nga server. Ang ubang mga tawo nanginahanglan usa ka pamilyar nga graphical nga palibot alang sa pagsulay ug pag-uswag, o usa ka hilit nga desktop nga adunay lapad nga channel alang sa pagtrabaho gikan sa mga mobile device. Adunay daghang mga kapilian sa paggamit sa Remote FrameBuffer (RFB) protocol-based Virtual Network Computing (VNC) system. Niini nga mubo nga artikulo isulti namon kanimo kung giunsa kini i-configure sa usa ka virtual machine nga adunay bisan unsang hypervisor.

Talaan sa mga sulod:

Pagpili sa usa ka VNC Server
Pag-instalar ug pag-ayo
Pagsugod sa usa ka serbisyo pinaagi sa systemd
Koneksyon sa Desktop

Pagpili sa usa ka VNC Server

Ang serbisyo sa VNC mahimong matukod sa sistema sa virtualization, ug ang hypervisor magkonektar niini sa mga gisundog nga mga aparato ug wala’y kinahanglan nga dugang nga pag-configure. Kini nga opsyon naglakip sa mahinungdanon nga overhead ug wala gisuportahan sa tanan nga mga providers - bisan sa usa ka dili kaayo resource-intensive nga pagpatuman, kung imbes nga sundon ang usa ka tinuod nga graphics device, ang usa ka gipasimple nga abstraction (framebuffer) gibalhin ngadto sa virtual machine. Usahay ang usa ka VNC server gihigot sa usa ka nagdagan nga X server, apan kini nga pamaagi mas angay alang sa pag-access sa usa ka pisikal nga makina, ug sa usa ka virtual nagmugna kini og daghang mga teknikal nga kalisud. Ang labing sayon ​​nga paagi sa pag-instalar sa usa ka VNC server mao ang usa ka built-in nga X server. Wala kini magkinahanglan og pisikal nga mga himan (video adapter, keyboard ug mouse) o ang ilang pagsundog gamit ang hypervisor, ug busa angayan sa bisan unsang matang sa VPS.

Pag-instalar ug pag-ayo

Kinahanglan namon ang usa ka virtual nga makina nga adunay Ubuntu Server 18.04 LTS sa default nga pag-configure niini. Adunay ubay-ubay nga mga server sa VNC sa standard nga mga repository niini nga pag-apod-apod: Hugot ngaVNC, TigerVNC, x11vnc ug uban pa. Nagpuyo kami sa TigerVNC - usa ka karon nga tinidor sa TightVNC, nga wala gisuportahan sa developer. Ang pag-set up sa ubang mga server gihimo sa parehas nga paagi. Kinahanglan ka usab nga mopili usa ka palibot sa desktop: ang labing kaayo nga kapilian, sa among opinyon, mao ang XFCE tungod sa medyo ubos nga mga kinahanglanon alang sa mga kapanguhaan sa pag-compute. Kadtong gusto maka-install og laing DE o WM: kini tanan nagdepende sa personal nga mga gusto, apan ang pagpili sa software direkta nga makaapekto sa panginahanglan alang sa RAM ug computing cores.

VPS sa Linux nga adunay usa ka graphical interface: paglansad sa usa ka VNC server sa Ubuntu 18.04

Ang pag-instalar sa palibot sa desktop uban sa tanan nga mga dependency gihimo sa mosunod nga sugo:

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

Sunod kinahanglan nimo i-install ang VNC server:

sudo apt-get install tigervnc-standalone-server tigervnc-common

Ang pagpadagan niini isip superuser usa ka dili maayo nga ideya. Paghimo og user ug grupo:

sudo adduser vnc

VPS sa Linux nga adunay usa ka graphical interface: paglansad sa usa ka VNC server sa Ubuntu 18.04

Atong idugang ang user sa sudo nga grupo aron makahimo siya sa mga buluhaton nga may kalabotan sa administrasyon. Kung walay ingon nga panginahanglan, mahimo nimong laktawan kini nga lakang:

sudo gpasswd -a vnc sudo

Ang sunod nga lakang mao ang pagpadagan sa VNC server nga adunay vnc user pribilihiyo sa paghimo og luwas nga password ug configuration files sa ~/.vnc/ directory. Ang gitas-on sa password mahimong gikan sa 6 ngadto sa 8 ka mga karakter (dugang nga mga karakter giputol). Kung gikinahanglan, ang usa ka password gitakda usab alang sa pagtan-aw lamang, i.e. walay access sa keyboard ug mouse. Ang mosunod nga mga sugo gipatuman isip vnc user:

su - vnc
vncserver -localhost no

VPS sa Linux nga adunay usa ka graphical interface: paglansad sa usa ka VNC server sa Ubuntu 18.04
Sa kasagaran, ang RFB protocol naggamit sa TCP port range gikan sa 5900 ngadto sa 5906 - kini ang gitawag. display ports, matag usa katumbas sa X server screen. Sa kini nga kaso, ang mga pantalan nalangkit sa mga screen gikan sa: 0 hangtod sa: 6. Ang pananglitan sa VNC server nga among gilusad naminaw sa port 5901 (screen: 1). Ang uban nga mga higayon mahimo’g magamit sa ubang mga pantalan nga adunay mga screen: 2,: 3, ug uban pa.

vncserver -kill :1

Ang sugo kinahanglan magpakita sa usa ka butang nga sama niini: "Pagpatay sa proseso sa Xtigervnc ID 18105... kalampusan!"

Sa diha nga ang TigerVNC magsugod, kini nagpadagan sa ~/.vnc/xstartup script aron ma-configure ang mga setting sa configuration. Himoon nato ang atong kaugalingong script, una nga magtipig og backup nga kopya sa naa na, kung naa na:

mv ~/.vnc/xstartup ~/.vnc/xstartup.b
nano ~/.vnc/xstartup

Ang XFCE desktop environment session gisugdan pinaagi sa mosunod nga xstartup script:

#!/bin/bash
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
xrdb $HOME/.Xresources
exec /usr/bin/startxfce4 &

Ang xrdb nga sugo gikinahanglan aron mabasa sa VNC ang .Xresources file sa home directory. Didto ang user makahubit sa lain-laing mga graphical desktop settings: font rendering, terminal color, cursor themes, etc. Ang script kinahanglang himoong executable:

chmod 755 ~/.vnc/xstartup

Nakompleto niini ang pag-setup sa VNC server. Kung gipadagan nimo kini gamit ang command vncserver -localhost no (ingon nga vnc user), mahimo nimong makonektar sa gitakda na nga password ug tan-awa ang mosunod nga hulagway:

VPS sa Linux nga adunay usa ka graphical interface: paglansad sa usa ka VNC server sa Ubuntu 18.04

Pagsugod sa usa ka serbisyo pinaagi sa systemd

Ang mano-mano nga pagsugod sa usa ka VNC server dili angay alang sa paggamit sa kombat, mao nga among i-configure ang serbisyo sa sistema. Ang mga sugo gipatuman isip gamut (among gigamit ang sudo). Una, maghimo kita ug bag-ong unit file para sa atong server:

sudo nano /etc/systemd/system/[email protected]

Ang @ simbolo sa ngalan nagtugot kanimo sa pagpasa sa usa ka argumento aron ma-configure ang serbisyo. Sa among kaso, gitino niini ang VNC display port. Ang unit file naglangkob sa daghang mga seksyon:

[Unit]
Description=TigerVNC server
After=syslog.target network.target

[Service]
Type=simple
User=vnc 
Group=vnc 
WorkingDirectory=/home/vnc 
PIDFile=/home/vnc/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x960 :%i
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

Unya kinahanglan nimo nga ipahibalo ang systemd bahin sa bag-ong file ug i-aktibo kini:

sudo systemctl daemon-reload
sudo systemctl enable [email protected]

Ang numero 1 sa ngalan nagtino sa numero sa screen.

Hunonga ang VNC server, sugdi kini isip serbisyo ug susiha ang kahimtang:

# ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ vnc 
vncserver -kill :1

# с привилСгиями ΡΡƒΠΏΠ΅Ρ€ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ
sudo systemctl start vncserver@1
sudo systemctl status vncserver@1

Kung ang serbisyo nagdagan, kinahanglan nga makakuha kami usa ka butang nga sama niini.

VPS sa Linux nga adunay usa ka graphical interface: paglansad sa usa ka VNC server sa Ubuntu 18.04

Koneksyon sa Desktop

Ang among configuration wala mogamit og encryption, mao nga ang mga network packet mahimong ma-intercept sa mga tig-atake. Dugang pa, sa mga server sa VNC kanunay pangitaa ang mga kahuyangan, mao nga dili nimo kini ablihan aron ma-access gikan sa Internet. Aron makonektar nga luwas sa imong lokal nga kompyuter, kinahanglan nimo nga i-package ang trapiko sa usa ka tunel sa SSH ug dayon i-configure ang usa ka kliyente sa VNC. Sa Windows, mahimo nimong gamiton ang usa ka graphical nga kliyente sa SSH (pananglitan, PuTTY). Alang sa seguridad, ang TigerVNC sa server naminaw lamang sa localhost ug dili direkta nga ma-access gikan sa mga pampublikong network:


sudo netstat -ap |more

VPS sa Linux nga adunay usa ka graphical interface: paglansad sa usa ka VNC server sa Ubuntu 18.04
Sa Linux, FreeBSD, OS X ug uban pang mga OS nga sama sa UNIX, usa ka tunel gikan sa kompyuter sa kliyente ang gihimo gamit ang ssh utility (sshd kinahanglan nga nagdagan sa VNC server):

ssh -L 5901:127.0.0.1:5901 -C -N -l vnc vnc_server_ip

Ang -L nga kapilian nagbugkos sa port 5901 sa hilit nga koneksyon sa port 5901 sa localhost. Ang -C nga kapilian makapahimo sa compression, ug ang -N nga kapilian nagsulti sa ssh nga dili ipatuman ang hilit nga sugo. Ang -l nga kapilian nagtino sa pag-login alang sa hilit nga pag-login.

Human sa pag-set up sa tunnel sa lokal nga kompyuter, kinahanglan nimo nga ilunsad ang VNC client ug mag-establisar og koneksyon sa host 127.0.0.1:5901 (localhost:5901), gamit ang kaniadto gipiho nga password aron ma-access ang VNC server. Makakomunikar na kami nga luwas pinaagi sa usa ka naka-encrypt nga tunel sa XFCE graphical desktop environment sa VPS. Sa screenshot, ang nag-una nga utility nagdagan sa terminal emulator aron ipakita ang gamay nga konsumo sa virtual machine sa mga kapanguhaan sa pag-compute. Unya ang tanan magdepende sa mga aplikasyon sa tiggamit.

VPS sa Linux nga adunay usa ka graphical interface: paglansad sa usa ka VNC server sa Ubuntu 18.04
Mahimo nimong i-install ug i-configure ang usa ka VNC server sa Linux sa halos bisan unsang VPS. Wala kini magkinahanglan og mahal ug kusog nga resource nga mga configuration nga adunay video adapter emulation o pagpalit og commercial software license. Dugang pa sa opsyon sa serbisyo sa sistema nga among gikonsiderar, adunay uban pa: ilunsad sa daemon mode (pinaagi sa /etc/rc.local) kung ang sistema mag-boot o on demand pinaagi sa inetd. Ang naulahi mao ang makapaikag alang sa paghimo sa multi-user configurations. Ang Internet Superserver magsugod sa VNC server ug magkonektar sa kliyente niini, ug ang VNC server maghimo og bag-ong screen ug magsugod sa sesyon. Aron mapamatud-an ang sulod niini, mahimo nimong gamiton ang usa ka graphical display manager (pananglitan, LightDM), ug pagkahuman sa pagdiskonekta sa kliyente, ang sesyon pagasirhan ug ang tanan nga mga programa nga nagtrabaho sa screen mahunong.

VPS sa Linux nga adunay usa ka graphical interface: paglansad sa usa ka VNC server sa Ubuntu 18.04

Source: www.habr.com

Idugang sa usa ka comment