VNC-pal­ve­li­men asen­ta­mi­nen Ubuntu 22.04:ään antaa sinulle mah­dol­li­suu­den käyttää Linux-työ­pöy­tää­si mistä tahansa. Olitpa sitten etätyössä, työ­mat­kal­la tai haluatko vain työs­ken­nel­lä toisesta huoneesta käsin – VNC-pal­ve­li­men avulla pääset aina käsiksi työym­pä­ris­töö­si.

Mitkä ovat VNC-pal­ve­li­men edut Ubuntu 22.04:ssä?

VNC-pal­ve­li­men käyttö Ubuntu 22.04:ssä tarjoaa monia mah­dol­li­suuk­sia helpottaa huo­mat­ta­vas­ti päi­vit­täis­tä työtä. VNC-pal­ve­li­men avulla voit käyttää Ubuntu-työ­pöy­tää­si mistä tahansa maa­il­mas­sa. Tämä tar­koit­taa, että sinun ei tarvitse olla työ­pöy­tä­si ääressä hal­li­tak­se­si so­vel­luk­sia­si ja tietojasi. Tämä jous­ta­vuus on erittäin kätevää etä­työn­te­ki­jöil­le, lii­ke­mat­kus­ta­jil­le tai ihmisille, jotka haluavat työs­ken­nel­lä eri paikoista käsin. Lisäksi VNC-pal­ve­li­men asennus on suh­teel­li­sen helppoa, joten myös vähemmän tek­ni­ses­ti pe­reh­ty­neet käyttäjät voivat nopeasti luoda toimivan etäyh­tey­den.

VNC-palvelin edistää myös tiimien sisäistä yh­teis­työ­tä. Sen avulla useat jäsenet voivat käyttää samaa työpöytää sa­ma­nai­kai­ses­ti. Näin tiimit voivat tehdä tehokasta yh­teis­työ­tä si­jain­nis­taan riip­pu­mat­ta, työstää pro­jek­te­ja yhdessä ja ratkaista ongelmia re­aa­lia­jas­sa. IT-jär­jes­tel­män­val­vo­jat ja tu­ki­hen­ki­lös­tö voivat myös korjata virheitä etäyh­tey­den kautta ilman, että heidän tarvitsee olla paikan päällä. Tämä säästää aikaa sekä mat­ka­kus­tan­nuk­sia ja yli­mää­räis­ten ta­paa­mis­ten jär­jes­tä­mi­ses­tä ai­heu­tu­via kuluja. Tur­val­li­suu­den osalta monilla Ubuntu 22.04:llä toi­mi­vil­la VNC-pal­ve­li­mil­la on vankat suo­jauso­mi­nai­suu­det. Salatut yhteydet ja erilaiset to­den­nus­me­ne­tel­mät suojaavat tietojasi ja var­mis­ta­vat, että vain val­tuu­te­tut henkilöt pääsevät jär­jes­tel­mää­si.

Nämä ovat VNC-pal­ve­li­men vaa­ti­muk­set Ubuntu 22.04:ssä

En­sin­nä­kin tarvitset toimivan Ubuntu 22.04 -asen­nuk­sen. Monet VNC-pal­ve­li­met ovat täysin yh­teen­so­pi­via tämän käyt­tö­jär­jes­tel­män kanssa, ja kaikki tar­vit­ta­vat paketit ja riip­pu­vuu­det löytyvät Ubuntun vi­ral­li­sis­ta pa­ket­ti­va­ras­tois­ta. Varmista, että jär­jes­tel­mä­si on ajan tasalla, jotta vältät mah­dol­li­set ongelmat asen­nuk­sen aikana. Yleisesti ottaen jär­jes­tel­män tulisi täyttää seuraavat vaa­ti­muk­set:

  • Ubuntu 22.04: Toimiva ja ajan tasalla oleva Ubuntu 22.04 -asennus.
  • Verk­ko­yh­teys: Vakaa Ethernet- tai WLAN-yhteys etä­käyt­töä varten.
  • Jär­jes­tel­män­val­vo­jan oikeudet: VNC-pal­ve­li­men käyttäjä tarvitsee jär­jes­tel­män­val­vo­jan oikeudet asennusta ja mää­ri­tyk­siä varten.
  • Oh­jel­mis­to­pa­ket­ti: VNC-pal­ve­li­noh­jel­mis­ton, kuten TigerVNC, RealVNC tai x11vnc, asennus Ubuntun pa­ket­ti­va­ras­tois­ta.
  • Työ­pöy­täym­pä­ris­tö: Vaadittu työ­pöy­täym­pä­ris­tö (esim. GNOME, XFCE) tulee olla asen­net­tu­na.
  • Pa­lo­muu­rin kon­fi­gu­roin­ti: Avaa portti 5900 tai muokkaa pa­lo­muu­ri­sään­tö­jä sallimaan VNC-liikenne.

VNC-pal­ve­li­men asen­ta­mi­nen Ubuntu 22.04:ään

VNC-pal­ve­li­men ja työ­pöy­täym­pä­ris­tön va­lin­nas­sa on monia vaih­toeh­to­ja. Tässä oppaassa asennamme XFCE-työ­pöy­täym­pä­ris­tön uusimmat paketit sekä TigerVNC-paketin, joka on saa­ta­vil­la Ubuntun vi­ral­li­ses­ta pa­ket­ti­va­ras­tos­ta. Sekä XFCE että TigerVNC vaativat vain vähän re­surs­se­ja ja toimivat nopeasti. Tämän ansiosta VNC-yhteys pysyy sujuvana ja vakaana myös hi­taam­mil­la in­ter­ne­tyh­teyk­sil­lä.

Vaihe 1: Päivitä paketit

Ennen kuin aloitat asen­nuk­sen, varmista, että jär­jes­tel­mä­si on ajan tasalla. Suorita seuraavat komennot asen­taak­se­si kaikki saa­ta­vil­la olevat päi­vi­tyk­set:

sudo apt update
sudo apt upgrade
bash

Vaihe 2: Asenna työ­pöy­täym­pä­ris­tö

VNC-palvelin vaatii työ­pöy­täym­pä­ris­tön, sillä se tarjoaa työpöydän verkon kautta. Ubuntu 22.04:ssä on ole­tuk­se­na GNOME, mutta voit asentaa myös muita työ­pöy­täym­pä­ris­tö­jä, kuten erityisen kevyen XFCE:n.

sudo apt install xfce4 xfce4-goodies
bash

xfce4-goodies -paketti sisältää hyö­dyl­li­siä li­sä­työ­ka­lu­ja ja laa­jen­nuk­sia XFCE:lle.

Vaihe 3: Luo uusi käyttäjä

Kun olet asentanut työ­pöy­täym­pä­ris­tön, sinun on luotava uusi käyttäjä VNC-pal­ve­li­men käyt­tä­mis­tä varten. Tur­val­li­suus­syis­tä on suo­si­tel­ta­vaa, ettet tee tätä pää­käyt­tä­jä­nä. Tässä ta­pauk­ses­sa luomme uuden käyttäjän nimeltä ”john” ja annamme hänelle tar­vit­ta­vat oikeudet VNC-pal­ve­li­men ajamiseen tällä käyt­tä­jä­ti­lil­lä.

Ensin sinun on luotava käyttäjä ”john” ja mää­ri­tet­tä­vä hänelle salasana. Voit tehdä tämän seu­raa­vil­la ko­men­noil­la:

sudo useradd -m -s /bin/bash john
sudo passwd john
bash

Komento sudo useradd -m -s /bin/bash john luo uuden käyttäjän ”john” ja määrittää hänelle ko­ti­ha­ke­mis­ton sekä asettaa ole­tuss­hel­lik­si /bin/bash. Määritä sitten sudo passwd john avulla salasana tälle käyt­tä­jäl­le. On erittäin tärkeää valita tur­val­li­nen salasana.

Kun käyttäjä on luotu, sinun on lisättävä hänet sudo-ryhmään, jotta hän voi suorittaa jär­jes­tel­män­val­vo­jan komentoja. Tämä tehdään seu­raa­val­la ko­men­nol­la:

sudo usermod -aG sudo john
bash

Tämä komento antaa käyt­tä­jäl­le ”john” oikeuden suorittaa komentoja sudo-komennon tar­joa­mil­la laa­jen­ne­tuil­la oi­keuk­sil­la.

Voit tarkistaa, onko käyt­tä­jäl­lä ”john” tar­vit­ta­vat käyt­tö­oi­keu­det, kir­jau­tu­mal­la sisään käyt­tä­jä­nä ”john” ja tes­taa­mal­la pää­käyt­tä­jän oikeudet. Suorita tätä varten seuraavat komennot:

su - john
sudo su
bash

Näp­päi­mel­lä su - john vaihdat käyt­tä­jäk­si ”john” ja näp­päi­mel­lä sudo su saat pää­käyt­tä­jän oikeudet, edel­lyt­täen että salasana on syötetty oikein. Jos tun­nis­tau­tu­mi­nen onnistuu, näet kehotteen, kuten root@hostname, joka vahvistaa, että sinulla on pää­käyt­tä­jän oikeudet.

Vaihe 4: Asenna VNC-pal­ve­li­noh­jel­mis­to

Tässä oppaassa käytämme TigerVNC:tä, koska se on laajalti käytetty ja hyvin tuettu VNC-palvelin. Asenna TigerVNC tällä ko­men­nol­la:

sudo apt install tigervnc-standalone-server tigervnc-common tigervnc-tools
bash

Tämä asennus asentaa VNC-pal­ve­li­noh­jel­mis­ton sekä joitakin toi­min­taan tar­vit­ta­via yleisiä paketteja.

Vaihe 5: Luo VNC-pal­ve­li­nins­tans­si

Ennen kuin voit käyn­nis­tää VNC-pal­ve­li­men, sinun on mää­ri­tet­tä­vä salasana, jota tarvitaan VNC-pal­ve­li­meen kir­jau­tu­mi­seen. Kirjoita ter­mi­naa­liin seuraava komento:

vncserver
bash

Sinua pyydetään antamaan ja vah­vis­ta­maan salasana. Tämä salasana suojaa pääsyä VNC-pal­ve­li­mee­si. Voit myös valita vaih­toeh­don, jolla määrität kat­se­lusa­la­sa­nan, jos haluat, että muut käyttäjät voivat vain katsella näyttöä ilman hal­lin­ta­oi­keuk­sia.

Kun palvelin käyn­nis­te­tään en­sim­mäi­sen kerran, luodaan uusi näyttö, yleensä :1. Tu­los­tuk­ses­sa näkyy tarkka numero, jota voit käyttää.

Tässä on esimerkki:

New 'X' desktop is your-machine-name:1
bash

Kirjoita näytön numero muistiin (tässä ta­pauk­ses­sa :1), sillä tarvitset sitä muo­dos­taes­sa­si yhteyden VNC-asia­kas­oh­jel­maan.

Vaihe 6: Määritä VNC-pal­ve­li­nins­tans­si

Luo VNC-pal­ve­li­mel­le ase­tus­tie­dos­to, jotta XFCE latautuu VNC-pal­ve­li­men käyn­nis­tyes­sä. Tie­dos­tos­sa ~/.vnc/xstartup voi olla esi­mer­kik­si seuraava sisältö:

#!/bin/sh
# Start up the standard system desktop
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
/usr/bin/startxfce4
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
x-window-manager &
bash

Tiedosto muuttuu suo­ri­tet­ta­vak­si, kun käytät tätä komentoa:

chmod +x ~/.vnc/xstartup
bash

Vaihe 7: Suorita VNC-palvelin jär­jes­tel­mä­pal­ve­lu­na

Mää­rit­tä­mäl­lä VNC-pal­ve­li­men Systemd-pal­ve­luk­si voit käyn­nis­tää, pysäyttää ja käyn­nis­tää sen uudelleen kuten minkä tahansa muun palvelun. Voit myös käyttää Systemd-komentoja käyn­nis­tääk­se­si VNC-pal­ve­li­men au­to­maat­ti­ses­ti jär­jes­tel­män käyn­nis­tyes­sä.

Luo ensin uusi tiedosto va­lit­se­mal­la­si teks­tie­di­to­ril­la:

nano /etc/systemd/system/vncserver@.service
bash

Lisää tie­dos­toon seuraava sisältö:

[Unit]
Description=Start TigerVNC server at startup
After=syslog.target network.target
[Service]
Type=forking
User=<your-username>
PAMName=login
PIDFile=/home/<your-username>/.vnc/%H:%i.pid
ExecStart=/usr/bin/vncserver %i
ExecStop=/usr/bin/vncserver -kill %i
[Install]
WantedBy=multi-user.target
bash

Korvaa <your-username> omalla käyt­tä­jä­tun­nuk­sel­la­si. Lataa uusi pal­ve­lu­tie­dos­to ja ota palvelu käyttöön:

sudo systemctl daemon-reload
sudo systemctl enable vncserver@1.service
sudo systemctl start vncserver@:1
bash

Komento sudo systemctl enable vncserver@1.service aktivoi VNC-palvelun näytölle :1 siten, että se käyn­nis­tyy au­to­maat­ti­ses­ti jär­jes­tel­män seu­raa­val­la käyn­nis­tyk­sel­lä. Tähän käytetään systemd-pal­ve­lu­tie­dos­toa vncserver@.service, jossa %i korvataan 1. Näin VNC-palvelu voidaan määrittää näytölle :1 ja varmistaa, että se käyn­nis­tyy aina jär­jes­tel­män käyn­nis­tyes­sä. Komento luo tar­vit­ta­vat pi­ka­ku­vak­keet, jotta palvelu si­säl­ly­te­tään oikeaan käyn­nis­tyspro­ses­siin.

Vaihe 8: Määritä pa­lo­muu­rin asetukset

Jos olet ottanut pa­lo­muu­rin käyttöön Ubuntu-pal­ve­li­mel­la­si, sinun on avattava VNC-portti etäyh­teyk­sien sal­li­mi­sek­si. Ole­tusar­voi­ses­ti VNC-palvelin käyttää porttia 5900, jota seuraa näytön numero. Näytölle :1 portti on siis 5901.

Avaa portti ufw:

sudo ufw allow 5901/tcp
bash

Tarkista pa­lo­muu­ri­sään­nöt ja varmista, että portti on auki:

sudo ufw status
bash

Tässä on esimerkki mah­dol­li­ses­ta tu­lok­ses­ta:

Status: active
To                              Action        From
--                                ------            ----
22/tcp                    	ALLOW       Anywhere
80/tcp                  	ALLOW       Anywhere
443/tcp                  	ALLOW       Anywhere
5901/tcp                	ALLOW       Anywhere
22/tcp (v6)             	ALLOW       Anywhere (v6)
80/tcp (v6)             	ALLOW       Anywhere (v6)
443/tcp (v6)           		ALLOW       Anywhere (v6)
5901/tcp (v6)         		ALLOW       Anywhere (v6)
bash

Vaihe 9: Yhdistä VNC-pal­ve­li­meen

VNC-pal­ve­li­meen muo­dos­ta­mi­sek­si tarvitset pai­kal­li­sel­le tie­to­ko­neel­le­si VNC-asia­kas­oh­jel­man. Suo­sit­tu­ja VNC-asia­kas­oh­jel­mia ovat RealVNC, TigerVNC Viewer ja TightVNC Viewer. VNC-yhteyden tur­val­li­suu­den pa­ran­ta­mi­sek­si kannattaa harkita salatun yhteyden käyttöä SSH:n kautta. Tämä suojaa VNC-asia­kas­oh­jel­man ja pal­ve­li­men välistä tie­to­lii­ken­net­tä.

Muodosta yhteys pal­ve­li­mee­si SSH:n kautta ja ohjaa VNC-portti:

ssh -L 59000:localhost:5901 -C -N -l <your-username>@<server-ip>
bash
  • ssh: Komento, jolla muo­dos­te­taan suojattu yhteys etä­pal­ve­li­meen SSH-pro­to­kol­lan kautta; pro­to­kol­la välittää tiedot salatussa muodossa.
  • -L 59000:localhost:5901: Ottaa pai­kal­li­sen portin edel­leen­lä­he­tyk­sen käyttöön. Pai­kal­li­sen tie­to­ko­neen portista 59000 tuleva liikenne vä­li­te­tään SSH-tunnelin kautta etä­pal­ve­li­men porttiin 5901. localhost viittaa etä­pal­ve­li­meen, jolla VNC-palvelin on käynnissä.
  • C: Aktivoi da­ta­lii­ken­teen pak­kauk­sen. Tämä voi parantaa siir­to­no­peut­ta ja vähentää kais­tan­le­vey­den käyttöä, eri­tyi­ses­ti hitailla yh­teyk­sil­lä.
  • N: Estää ko­men­to­jen suo­rit­ta­mi­sen etä­pal­ve­li­mel­la. Tämä tila on hyö­dyl­li­nen, jos haluat vain määrittää tunnelin käyn­nis­tä­mät­tä ko­men­to­tulk­kia etä­pal­ve­li­mel­la.
  • -l <your-username>: Määrittää käyt­tä­jä­tun­nuk­sen, jolla kirjaudut etä­pal­ve­li­meen.
  • <server-ip>: Sen etä­pal­ve­li­men IP-osoite tai isän­tä­ni­mi, johon haluat muodostaa yhteyden SSH:n kautta.
Huomio

Korvaa <your-username> käyt­tä­jä­tun­nuk­sel­la­si ja <server-ip> pal­ve­li­me­si IP-osoit­teel­la.

Yhdistä SSH-tunnelin kautta uu­del­lee­noh­jat­tuun pai­kal­li­seen porttiin 5901 kir­joit­ta­mal­la VNC-kat­se­luoh­jel­maan localhost:5901.

Tämä menetelmä takaa, että VNC-yhteys muo­dos­te­taan salatun SSH-yhteyden kautta, minkä vuoksi se on tur­val­li­sem­pi.

Vaihe 10: VNC-pal­ve­li­men hallinta

VNC-pal­ve­li­men py­säyt­tä­mi­seen tai käyn­nis­tä­mi­seen käytä seuraavia komentoja:

Pysäytä VNC-palvelin:

vncserver -kill :1
bash

Käynnistä VNC-palvelin uudelleen:

vncserver :1
bash

VNC-pal­ve­li­men sul­ke­mi­nen (systemd:n avulla):

sudo systemctl stop vncserver@:1
bash

Tarkista tila:

sudo systemctl status vncserver@1
bash

Yksi mah­dol­li­nen tulos voisi olla:

vncserver@1.service - Start TigerVNC server at startup
      Loaded: loaded (/etc/systemd/system/vncserver@.service; enabled; vendor preset: enabled)
      Active: active (running) since Mon 2024-07-29 16:57:26 UTC; 20s ago
     Process: 97088 ExecStartPre=/usr/bin/vncserver -kill :1 > /dev/null 2>&1 (code=exited, status=2)
     Process: 97092 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 -localhost :1 (code=exited, status=0/SUCCESS)
    Main PID: 97103 (Xtigervnc)
        Tasks: 77 (limit: 4665)
      Memory: 146.7M
          CPU: 4.459s
      CGroup: /system.slice/system-vncserver.slice/vncserver@1.service
. . .
bash

Vaihe 11: Vian­mää­ri­tys

Jos kohtaat ongelmia, tarkista seuraavat seikat:

  • Lo­ki­tie­dos­tot: VNC-pal­ve­li­men lo­ki­tie­dos­tot si­jait­se­vat kansiossa ~/.vnc. Tarkista näistä tie­dos­tois­ta, onko niissä vir­heil­moi­tuk­sia, jotka voivat viitata mah­dol­li­siin ongelmiin.
  • Verk­ko­yh­teys: Varmista, että verk­ko­ra­joi­tuk­set tai pa­lo­muu­rit eivät estä pääsyä VNC-porttiin.
  • Mää­ri­tys­tie­dos­tot: Varmista, ettei tie­dos­tos­sa ~/.vnc/xstartup ole virheitä työ­pöy­täym­pä­ris­tön mää­ri­tyk­sis­sä.

Nyt voit hallita tie­dos­to­ja­si, ohjelmia ja jär­jes­tel­mä­ase­tuk­sia­si kätevästi VNC-pal­ve­li­men kautta. Jos käytät mie­luum­min Windowsia, suo­sit­te­lem­me lukemaan oppaamme”VNC-pal­ve­li­men asen­ta­mi­nen Win­dow­siin”.

Siirry pää­va­lik­koon