Als je grafisch met een externe server wilt werken, kun je VNC-technologie gebruiken.
VNC (Virtual Network Computing) stelt gebruikers in staat om op afstand verbinding te maken met een server via het netwerk. Het werkt met een client-server-architectuur en gebruikt het RFB-protocol om schermbeelden en invoergegevens (toetsenbord en muis) over te dragen. VNC ondersteunt verschillende besturingssystemen, waaronder Ubuntu, Windows, macOS en anderen. Een bijkomend voordeel is dat meerdere gebruikers tegelijkertijd verbinding kunnen maken, wat handig is voor samenwerking of training.
In deze gids leggen we uit hoe je VNC installeert op Ubuntu met als voorbeeld een Hostman-cloudserver met Ubuntu 22.04.
Voordat je begint met de installatie op zowel de server als de lokale machine, zijn er een paar vereisten die je moet doornemen. Hier is een overzicht van wat je nodig hebt om de installatie te voltooien:
Een server met Ubuntu 22.04. In deze gids gebruiken we een Hostman-cloudserver met een minimale hardwareconfiguratie.
Een grafische desktopomgeving naar keuze. Je moet een desktopomgeving kiezen waarmee je na de installatie met de server op afstand kunt werken.
Een computer met een VNC-client geïnstalleerd.
Momenteel kun je alleen via de console met een Ubuntu 22.04-server werken. Voor een grafische interface op afstand moet je zowel een desktopomgeving als een VNC-server installeren. Hier zijn enkele opties.
VNC-servers:
TightVNC Server. Een van de populairste keuzes voor Ubuntu. Eenvoudig te configureren en snel.
RealVNC Server. Een commerciële oplossing voor toegang tot Linux-servers, waaronder Ubuntu, Debian, Fedora, Arch Linux en meer.
Desktopomgevingen:
Xfce. Lichtgewicht en snel. Ideaal voor VNC-sessies. Verbruikt minder bronnen dan zwaardere omgevingen. Perfect voor servers en virtuele machines.
GNOME. De standaard desktopomgeving van Ubuntu, met een moderne en gebruiksvriendelijke interface. Werkt met VNC, maar verbruikt meer bronnen dan Xfce.
KDE Plasma. Een populaire omgeving met veel functies en een mooie interface.
De keuze hangt af van je behoeften en beschikbare bronnen. TightVNC en Xfce zijn uitstekende opties voor stabiele sessies met een laag verbruik. In de volgende stap leggen we uit hoe je deze installeert.
Log in op je server met een gebruiker die sudo-rechten heeft.
Werk de pakketlijst bij
Na het inloggen voer je dit commando uit om de lijst met pakketten uit de verbonden repositories bij te werken.
sudo apt update
Installeer de desktopomgeving
sudo apt install xfce4 xfce4-goodies
Het eerste pakket bevat de basisomgeving van Xfce. Het tweede voegt optionele toepassingen en plugins toe.
Installeer TightVNC Server
sudo apt install tightvncserver
Start de VNC-server
vncserver
Dit commando start een nieuwe VNC-sessie met een specifiek sessienummer zoals :1
(voor poort 5901), :2
(voor poort 5902), enzovoort. Elk sessienummer komt overeen met een displaypoort. Hierdoor kunnen meerdere VNC-sessies tegelijkertijd draaien op dezelfde machine.
Tijdens de eerste keer opstarten zal het systeem je vragen om een wachtwoord in te stellen. Dit wachtwoord is nodig om verbinding te maken met de grafische gebruikersinterface van de server.
View-only wachtwoord instellen (optioneel)
Na het instellen van het hoofdwachtwoord kun je ervoor kiezen een view-only wachtwoord in te stellen. Dit is handig voor demonstraties of situaties waarin je anderen alleen leesrechten wilt geven zonder controle over de sessie.
Wachtwoorden aanpassen kan later met:
vncpasswd
Je hebt nu een actieve VNC-sessie.
In de volgende stap configureren we VNC om automatisch de juiste desktopomgeving te starten.
Stop actieve sessies
vncserver -kill :1
In dit voorbeeld stoppen we sessie :1
, die overeenkomt met poort 5901.
Maak een back-up van het configuratiebestand
Het is goed om een back-up te maken voordat je wijzigingen aanbrengt.
mv ~/.vnc/xstartup ~/.vnc/xstartup.bak
Bewerk het configuratiebestand
nano ~/.vnc/xstartup
Vervang de inhoud met het volgende:
#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &
#!/bin/bash
: deze regel (de "shebang") geeft aan dat het script wordt uitgevoerd met de Bash-shell.xrdb $HOME/.Xresources
: laadt gebruikersinstellingen zoals kleuren, lettertypen en muiscursorinstellingen.startxfce4 &
: start de Xfce-desktopomgeving op de server.Maak het configuratiebestand uitvoerbaar
chmod +x ~/.vnc/xstartup
Start VNC met localhost-beperking
vncserver -localhost
De optie -localhost
beperkt de toegang tot de server zelf. Je kunt nog steeds verbinden vanaf je lokale computer via een SSH-tunnel. Deze verbindingen worden als lokaal beschouwd door de VNC-server.
De VNC-configuratie is nu voltooid.
We installeren een VNC-client op Windows 11.
Populaire VNC-clients:
Voor deze handleiding gebruiken we de gratis TightVNC Viewer.
TightVNC Viewer downloaden en installeren
Bezoek de officiële TightVNC-website, download het installatieprogramma en voer het uit.
Klik op "Next" en accepteer de licentieovereenkomst.
Kies de aangepaste installatiemodus en schakel de installatie van de VNC-servercomponent uit.
Klik tweemaal op "Next" en voltooi de installatie van de VNC-client op je lokale computer.
Een SSH-tunnel instellen voor een beveiligde verbinding
Om je verbinding met de VNC-server te versleutelen, gebruik je SSH om een beveiligde tunnel op te zetten. Open PowerShell op je Windows 11-computer en voer het volgende commando uit:
ssh -L 56789:localhost:5901 -C -N -l gebruikersnaam server_ip_adres
Zorg ervoor dat OpenSSH op je lokale machine is geïnstalleerd. Raadpleeg zo nodig de documentatie van Microsoft om dit te installeren.
Dit commando stelt een SSH-tunnel in die je verbinding van je lokale computer naar de externe server omleidt via een beveiligd kanaal. Hierdoor denkt de VNC-server dat de verbinding van de server zelf komt.
Toelichting op de gebruikte opties:
-L
configureert SSH-port forwarding door poort 56789 van de lokale computer door te sturen naar poort 5901 op de server. Deze poort is gekozen omdat ze niet bezet is door andere diensten.-C
schakelt compressie in, waardoor gegevens sneller over SSH worden verzonden.-N
geeft aan dat er na het tot stand brengen van de verbinding geen verdere commando’s worden uitgevoerd.-l
geeft de gebruikersnaam op waarmee je verbinding maakt met de server.Verbinding maken met TightVNC Viewer
Na het maken van de SSH-tunnel open je TightVNC Viewer en voer je in het veld voor de verbinding het volgende in:
localhost:56789
Je wordt gevraagd het wachtwoord in te voeren dat je tijdens de initiële configuratie van de VNC-server hebt ingesteld.
Na het invoeren van het wachtwoord wordt je verbonden met de VNC-server en verschijnt de Xfce-desktopomgeving.
De SSH-tunnel sluiten
Ga terug naar PowerShell of de opdrachtregel op je lokale machine en druk op CTRL+C om de tunnel te sluiten.
In deze gids heb je stap voor stap geleerd hoe je VNC installeert op Ubuntu 22.04. We gebruikten TightVNC Server als de VNC-server, TightVNC Viewer als client en Xfce als desktopomgeving voor de interactie met de server.
We hopen dat VNC-technologie het beheer van je server eenvoudiger en efficiënter maakt.
Heb je problemen met het opzetten van een Ubuntu-server? Bekijk dan onze gedetailleerde instructie op Hostman.