Ved å installere en VNC-server på Ubuntu 22.04 får du muligheten til å få tilgang til Linux-skrivebordet ditt uansett hvor du befinner deg. Enten du jobber hjemmefra, er på forretningsreise eller bare ønsker å jobbe fra et annet rom – med en VNC-server har du alltid tilgang til arbeidsmiljøet ditt.

Hva er fordelene med en VNC-server på Ubuntu 22.04?

Å bruke en VNC-server på Ubuntu 22.04 gir mange muligheter til å gjøre hverdagen mye enklere. Med en VNC-server kan du få tilgang til Ubuntu-skrivebordet ditt fra hvor som helst i verden. Dette betyr at du ikke trenger å være ved skrivebordet ditt for å administrere programmer og data. Denne fleksibiliteten er svært praktisk for fjernarbeidere, forretningsreisende eller folk som ønsker å jobbe fra forskjellige steder. Dessuten er det relativt enkelt å sette opp en VNC-server, så selv brukere med mindre teknisk kunnskap kan raskt opprette en fungerende ekstern tilkobling.

En VNC-server fremmer også samarbeidet i team. Den gir flere medlemmer samtidig tilgang til samme skrivebord. Dette gjør at team kan samarbeide effektivt uavhengig av hvor de befinner seg, jobbe sammen om prosjekter og løse problemer i sanntid. IT-administratorer og support kan også løse feil eksternt uten å måtte være på stedet. Dette sparer tid og kostnader knyttet til reiser og ekstra avtaler. Når det gjelder sikkerhet, har mange VNC-servere på Ubuntu 22.04 solide sikkerhetsfunksjoner. Krypterte tilkoblinger og ulike autentiseringsmetoder beskytter dataene dine og sikrer at kun autoriserte personer har tilgang til systemet ditt.

Dette er kravene til en VNC-server på Ubuntu 22.04

Først må du ha en fungerende installasjon av Ubuntu 22.04. Mange VNC-servere er fullt kompatible med dette operativsystemet, og alle nødvendige pakker og avhengigheter finnes i de offisielle Ubuntu-pakkebasene. Sørg for at systemet ditt er oppdatert for å unngå eventuelle problemer under installasjonen. Generelt sett bør du oppfylle følgende krav:

  • Ubuntu 22.04: En fungerende og oppdatert installasjon av Ubuntu 22.04.
  • Nettverkstilkobling: En stabil Ethernet- eller WLAN-tilkobling for ekstern tilgang.
  • Root-rettigheter: VNC-serverbrukeren trenger root-rettigheter for installasjon og konfigurasjon.
  • Programvarepakke: Installasjon av VNC-serverprogramvare, for eksempel TigerVNC, RealVNC eller x11vnc fra Ubuntu-repositoriene.
  • Skrivebordsmiljø: Det nødvendige skrivebordsmiljøet (f.eks. GNOME, XFCE) bør være installert.
  • Brannmurkonfigurasjon: Åpne port 5900 eller juster brannmurreglene for å tillate VNC-trafikk.

Slik installerer du en VNC-server på Ubuntu 22.04

Det finnes mange alternativer når det gjelder valg av VNC-server og skrivebordsmiljø. I denne veiledningen skal vi installere de nyeste pakkene for skrivebordsmiljøet XFCE og TigerVNC-pakken, som er tilgjengelig i det offisielle Ubuntu-arkivet. Både XFCE og TigerVNC krever lite ressurser og gir rask ytelse. Dette gjør at VNC-forbindelsen forblir jevn og stabil selv ved tregere internettforbindelser.

Trinn 1: Oppdater pakker

Før du starter installasjonen, må du sørge for at systemet ditt er oppdatert. Kjør følgende kommandoer for å installere alle tilgjengelige oppdateringer:

sudo apt update
sudo apt upgrade
bash

Trinn 2: Installer skrivebordsmiljøet

VNC-serveren krever et skrivebordsmiljø, siden den leverer skrivebordet over nettverket. Ubuntu 22.04 leveres med GNOME som standard, men du kan også installere andre skrivebordsmiljøer, for eksempel XFCE, som er spesielt ressurssparende.

sudo apt install xfce4 xfce4-goodies
bash

Pakken xfce4-goodies inneholder flere nyttige verktøy og utvidelser for XFCE.

Trinn 3: Opprett en ny bruker

Når du har installert skrivebordsmiljøet, må du opprette en ny bruker for å betjene VNC-serveren. Av sikkerhetshensyn anbefales det å ikke gjøre dette som root-bruker. I dette tilfellet skal vi opprette en ny bruker med navnet «john» og gi ham de nødvendige rettighetene til å kjøre VNC-serveren under denne brukerkontoen.

Først må du opprette brukeren «john» og tildele ham et passord. Du kan gjøre dette med følgende kommandoer:

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

Kommandoen sudo useradd -m -s /bin/bash john oppretter en ny bruker ved navn «john» og oppretter en hjemmekatalog, samtidig som standard-shell settes til /bin/bash. Bruk deretter sudo passwd john til å angi et passord for denne brukeren. Det er viktig å velge et sikkert passord.

Når brukeren er opprettet, må du legge den til i sudo-gruppen slik at den kan utføre administrative kommandoer. Dette gjør du med følgende kommando:

sudo usermod -aG sudo john
bash

Denne kommandoen gjør det mulig for «john» å utføre kommandoer med utvidede rettigheter som gis av sudo.

For å sjekke om «john» har de riktige rettighetene, logger du inn som «john» og tester root-rettighetene. For å gjøre dette, kjører du følgende kommandoer:

su - john
sudo su
bash

Ved å taste su - john bytter du til brukeren «john», og ved å taste sudo su får du root-rettigheter, forutsatt at passordet er tastet inn riktig. Hvis påloggingen lykkes, vil du se en melding som root@hostname, som bekrefter at du har root-rettigheter.

Trinn 4: Installer VNC-serverprogramvaren

I denne veiledningen skal vi bruke TigerVNC, siden det er et mye brukt og godt støttet alternativ for VNC-server. Installer TigerVNC med denne kommandoen:

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

Denne oppføringen installerer VNC-serverprogramvaren samt noen nødvendige standardpakker som kreves for driften.

Trinn 5: Opprett VNC-serverinstansen

Før du kan starte VNC-serveren, må du angi et passord som kreves for å få tilgang til VNC-serveren. Skriv inn følgende kommando i terminalen:

vncserver
bash

Du blir bedt om å oppgi og bekrefte et passord. Dette passordet sikrer tilgangen til VNC-serveren din. Du kan også velge et alternativ for å angi et passord som kun gir visningsrettigheter, dersom du ønsker at andre brukere kun skal kunne se skjermen uten å ha kontroll over den.

Når serveren startes for første gang, opprettes en ny skjerm, vanligvis :1. Utdataene viser det nøyaktige nummeret på skjermen du kan bruke.

Her er et eksempel:

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

Noter deg skjermnummeret (i dette tilfellet :1), da du trenger dette for å koble deg til VNC-klienten.

Trinn 6: Konfigurer VNC-serverinstansen

Opprett en konfigurasjonsfil for VNC-serveren for å sikre at XFCE lastes inn når VNC-serveren startes. Filen ~/.vnc/xstartup kan for eksempel ha følgende innhold:

#!/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

Filen blir kjørbar når du bruker denne kommandoen:

chmod +x ~/.vnc/xstartup
bash

Trinn 7: Kjør VNC-serveren som en systemtjeneste

Ved å konfigurere VNC-serveren som en Systemd-tjeneste kan du starte, stoppe og starte den på nytt på samme måte som alle andre tjenester. Du kan også bruke Systemd-kommandoer til å starte VNC-serveren automatisk når systemet starter opp.

Opprett først en ny fil i et tekstredigeringsprogram etter eget valg:

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

Legg til følgende innhold i filen:

[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

Erstatt <your-username> med ditt faktiske brukernavn. Last inn den nye tjenestefilen og aktiver tjenesten:

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

Kommandoen sudo systemctl enable vncserver@1.service aktiverer VNC-servertjenesten for skjerm :1, slik at den starter automatisk neste gang systemet startes opp. Til dette brukes systemd-tjenestefilen vncserver@.service, der %i erstattes med 1. Dette gjør det mulig å konfigurere VNC-serveren for skjerm :1 og sikre at den starter hver gang systemet starter opp. Kommandoen oppretter de nødvendige snarveiene for å inkludere tjenesten i riktig oppstartsprosess.

Trinn 8: Konfigurer brannmuren

Hvis du har aktivert en brannmur på Ubuntu-serveren din, må du åpne VNC-porten for å tillate eksterne tilkoblinger. Som standard bruker VNC-serveren port 5900, etterfulgt av skjermnummeret. For skjerm :1 er porten altså 5901.

Åpne port ufw:

sudo ufw allow 5901/tcp
bash

Kontroller brannmurreglene for å sikre at porten er åpen:

sudo ufw status
bash

Her er et eksempel på et mulig resultat:

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

Trinn 9: Koble til VNC-serveren

For å opprette en forbindelse til VNC-serveren din, trenger du en VNC-klient på den lokale datamaskinen din. Populære VNC-klienter er RealVNC, TigerVNC Viewer og TightVNC Viewer. For å øke sikkerheten til VNC-forbindelsen din, bør du vurdere å bruke en kryptert forbindelse via SSH. Dette sikrer kommunikasjonen mellom VNC-klienten din og serveren.

Opprett en tilkobling til serveren din via SSH og videresend VNC-porten:

ssh -L 59000:localhost:5901 -C -N -l <your-username>@<server-ip>
bash
  • ssh: Kommandoen for sikker tilkobling til en ekstern server via SSH-protokollen, som overfører data i kryptert form.
  • -L 59000:localhost:5901: Aktiverer lokal portvideresending. Trafikk fra port 59000 på din lokale datamaskin videresendes gjennom SSH-tunnelen til port 5901 på den eksterne serveren. localhost refererer til den eksterne serveren der VNC-serveren kjører.
  • C: Aktiverer komprimering av datatrafikk. Dette kan forbedre overføringshastigheten og redusere båndbreddeforbruket, spesielt ved langsomme tilkoblinger.
  • N: Hindrer at kommandoer utføres på den eksterne serveren. Denne modusen er nyttig hvis du bare vil sette opp tunnelen uten å starte et skall på den eksterne serveren.
  • -l <your-username>: Angir brukernavnet du logger inn med på den eksterne serveren.
  • <server-ip>: IP-adressen eller vertsnavnet til den eksterne serveren du ønsker å koble deg til via SSH.
Note

Erstatt <your-username> med brukernavnet ditt og <server-ip> med IP-adressen til serveren din.

Koble til den lokale porten 5901 som du har videresendt via SSH-tunnelen, ved å skrive inn localhost:5901 i VNC-visningsprogrammet.

Denne metoden sikrer at VNC-tilkoblingen din opprettes via en kryptert SSH-tilkobling og dermed er sikrere.

Trinn 10: Administrer VNC-serveren

For å stoppe eller starte VNC-serveren på nytt, bruk følgende kommandoer:

Stopp VNC-serveren:

vncserver -kill :1
bash

Start VNC-serveren på nytt:

vncserver :1
bash

Avslutt VNC-serveren (med systemd):

sudo systemctl stop vncserver@:1
bash

Sjekk status:

sudo systemctl status vncserver@1
bash

Et mulig resultat kan være:

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

Trinn 11: Feilsøking

Hvis du støter på problemer, bør du sjekke følgende:

  • Loggfiler: Loggfilene for VNC-serveren ligger i ~/.vnc. Sjekk disse filene for feilmeldinger som kan tyde på mulige problemer.
  • Nettverkstilkobling: Sørg for at ingen nettverksbegrensninger eller brannmurer blokkerer tilgangen til VNC-porten.
  • Konfigurasjonsfiler: Kontroller at det ikke er feil i konfigurasjonen av skrivebordsmiljøet i filen ~/.vnc/xstartup.

Du har nå muligheten til å administrere filer, programmer og systeminnstillinger på en enkel måte via en VNC-server. Hvis du foretrekker å bruke Windows, anbefaler vi veiledningen vår«Installer VNC-server på Windows».

Go to Main Menu