Hoe installeer je een VNC-server op Ubuntu 22.04?
Door een VNC-server op Ubuntu 22.04 te installeren, kunt u overal toegang krijgen tot uw Linux-desktop. Of u nu thuis werkt, op zakenreis bent of gewoon vanuit een andere kamer wilt werken — met een VNC-server hebt u altijd toegang tot uw werkomgeving.
Wat zijn de voordelen van een VNC-server op Ubuntu 22.04?
Het gebruik van een VNC-server op Ubuntu 22.04 biedt veel mogelijkheden om het dagelijkse werk een stuk eenvoudiger te maken. Met een VNC-server hebt u overal ter wereld toegang tot uw Ubuntu-desktop. Dit betekent dat u niet achter uw bureau hoeft te zitten om uw applicaties en gegevens te beheren. Deze flexibiliteit is uiterst handig voor telewerkers, zakenreizigers of mensen die vanaf verschillende locaties willen werken. Bovendien is het opzetten van een VNC-server relatief eenvoudig, zodat zelfs minder technisch onderlegde gebruikers snel een werkende externe verbinding tot stand kunnen brengen.
Een VNC-server bevordert ook de samenwerking binnen teams. Het stelt meerdere leden in staat om tegelijkertijd toegang te krijgen tot hetzelfde bureaublad. Hierdoor kunnen teams effectief samenwerken, ongeacht hun locatie, samen aan projecten werken en problemen in realtime oplossen. IT-beheerders en ondersteuning kunnen ook op afstand fouten oplossen zonder ter plaatse te hoeven zijn. Dit bespaart tijd en kosten voor reizen en extra afspraken. Op het gebied van beveiliging hebben veel VNC-servers op Ubuntu 22.04 robuuste opties. Versleutelde verbindingen en verschillende authenticatiemethoden beschermen uw gegevens en zorgen ervoor dat alleen geautoriseerde personen toegang hebben tot uw systeem.
Dit zijn de vereisten voor een VNC-server op Ubuntu 22.04
Eerst moet je een werkende installatie van Ubuntu 22.04 hebben. Veel VNC-servers zijn helemaal compatibel met dit besturingssysteem en alle benodigde pakketten en afhankelijkheden zijn te vinden in de officiële Ubuntu-repositories. Zorg ervoor dat je systeem up-to-date is om mogelijke problemen tijdens de installatie te voorkomen. Over het algemeen moet je aan de volgende vereisten voldoen:
- Ubuntu 22.04: Een werkende en up-to-date installatie van Ubuntu 22.04.
- Netwerkverbinding: een stabiele ethernet- of WLAN-verbinding voor externe toegang.
- Root-rechten: De VNC-servergebruiker heeft root-rechten nodig voor installatie en configuratie.
- Softwarepakket: installatie van VNC-serversoftware, zoals TigerVNC, RealVNC of x11vnc uit de Ubuntu-repositories.
- Desktopomgeving: De vereiste desktopomgeving (bijv. GNOME, XFCE) moet zijn geïnstalleerd.
- Firewallconfiguratie: Open poort 5900 of pas de firewallregels aan om VNC-verkeer toe te staan.
Hoe installeer je een VNC-server op Ubuntu 22.04?
Er zijn veel opties als het gaat om het kiezen van een VNC-server en desktopomgeving. In deze tutorial installeren we de nieuwste pakketten voor de XFCE-desktopomgeving en het TigerVNC-pakket dat beschikbaar is in de officiële Ubuntu-repository. XFCE en TigerVNC vereisen beide weinig bronnen en presteren snel. Daardoor blijft de VNC-verbinding soepel en stabiel, zelfs bij tragere internetverbindingen.
Stap 1: Pakketten bijwerken
Voordat u met de installatie begint, moet u ervoor zorgen dat uw systeem up-to-date is. Voer de volgende commando’s uit om alle beschikbare updates te installeren:
sudo apt update
sudo apt upgradebashStap 2: Installeer de desktopomgeving
De VNC-server vereist een desktopomgeving, aangezien deze de desktop via het netwerk aanbiedt. Ubuntu 22.04 wordt standaard geleverd met GNOME, maar u kunt ook andere desktopomgevingen installeren, zoals XFCE, dat bijzonder licht is.
sudo apt install xfce4 xfce4-goodiesbashHet xfce4-goodies -pakket bevat extra handige tools en plug-ins voor XFCE.
Stap 3: Maak een nieuwe gebruiker aan
Nadat u de desktopomgeving hebt geïnstalleerd, moet u een nieuwe gebruiker aanmaken om de VNC-server te bedienen. Het is raadzaam om dit niet als rootgebruiker te doen om de veiligheid te waarborgen. In dit geval maken we een nieuwe gebruiker aan met de naam ‘john’ en geven we hem de nodige rechten om de VNC-server onder dit gebruikersaccount te draaien.
Eerst moet u de gebruiker ‘john’ aanmaken en hem een wachtwoord toewijzen. Dit kunt u doen met de volgende commando’s:
sudo useradd -m -s /bin/bash john
sudo passwd johnbashMet het commando sudo useradd -m -s /bin/bash john maakt u een nieuwe gebruiker ‘john’ aan en stelt u een homedirectory in, waarbij u de standaard shell instelt op /bin/bash. Gebruik vervolgens sudo passwd john om een wachtwoord voor deze gebruiker in te stellen. Het is essentieel om een veilig wachtwoord te kiezen.
Nadat de gebruiker is aangemaakt, moet u deze toevoegen aan de sudo-groep, zodat deze beheerdersopdrachten kan uitvoeren. Dit doet u met de volgende opdracht:
sudo usermod -aG sudo johnbashMet dit commando kan ‘john’ commando’s uitvoeren met uitgebreide rechten die worden verleend door sudo.
Om te controleren of ‘john’ de juiste autorisaties heeft, logt u in als ‘john’ en test u de root-rechten. Voer hiervoor de volgende commando’s uit:
su - john
sudo subashMet su - john schakelt u over naar de gebruiker ‘john’ en met sudo su krijgt u rootrechten, mits het wachtwoord correct is ingevoerd. Als de authenticatie succesvol is, ziet u een prompt zoals root@hostname, die bevestigt dat u rootrechten hebt.
Stap 4: Installeer de VNC-serversoftware
Voor deze tutorial gebruiken we TigerVNC, omdat dit een veelgebruikte en goed ondersteunde VNC-serveroptie is. Installeer TigerVNC met deze opdracht:
sudo apt install tigervnc-standalone-server tigervnc-common tigervnc-toolsbashDeze invoer installeert de VNC-serversoftware en enkele noodzakelijke algemene pakketten die vereist zijn voor de werking.
Stap 5: Maak de VNC-serverinstantie aan
Voordat u de VNC-server kunt starten, moet u een wachtwoord instellen dat vereist is om toegang te krijgen tot de VNC-server. Voer de volgende opdracht in de terminal in:
vncserverbashU wordt gevraagd een wachtwoord in te voeren en te bevestigen. Dit wachtwoord beschermt de toegang tot uw VNC-server. U kunt ook een optie selecteren om een wachtwoord voor alleen-lezen in te stellen als u wilt dat andere gebruikers alleen het scherm kunnen zien, maar geen controle hebben.
Wanneer de server voor het eerst wordt gestart, wordt een nieuw scherm aangemaakt, meestal :1. De uitvoer toont het exacte nummer van het scherm dat u kunt gebruiken.
Hier is een voorbeeld:
New 'X' desktop is your-machine-name:1bashNoteer het weergavenummer (in dit geval :1), want u hebt dit nodig om verbinding te maken met de VNC-client.
Stap 6: Configureer de VNC-serverinstantie
Maak een configuratiebestand voor de VNC-server om ervoor te zorgen dat XFCE wordt geladen wanneer de VNC-server wordt gestart. Het bestand ~/.vnc/xstartup kan bijvoorbeeld de volgende inhoud hebben:
#!/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 &bashHet bestand wordt uitvoerbaar wanneer u deze opdracht gebruikt:
chmod +x ~/.vnc/xstartupbashStap 7: Start de VNC-server als een systeemservice
Door de VNC-server als een Systemd-service in te stellen, kunt u deze net als elke andere service starten, stoppen en opnieuw starten. U kunt ook Systemd-opdrachten gebruiken om de VNC-server automatisch te starten wanneer het systeem opstart.
Maak eerst een nieuw bestand aan met een teksteditor naar keuze:
nano /etc/systemd/system/vncserver@.servicebashVoeg de volgende inhoud toe aan het bestand:
[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.targetbashVervang <your-username> door uw eigen gebruikersnaam. Laad het nieuwe servicebestand en activeer de service:
sudo systemctl daemon-reload
sudo systemctl enable vncserver@1.service
sudo systemctl start vncserver@:1bashHet commando sudo systemctl enable vncserver@1.service activeert de VNC-serverservice voor beeldscherm :1, zodat deze automatisch start wanneer het systeem de volgende keer wordt opgestart. Hiervoor wordt het systemd-servicebestand vncserver@.service gebruikt, waarin %i wordt vervangen door 1. Hierdoor kan de VNC-server voor beeldscherm :1 worden geconfigureerd en wordt ervoor gezorgd dat deze elke keer start wanneer het systeem opstart. Het commando maakt de nodige snelkoppelingen om de service in het juiste opstartproces op te nemen.
Stap 8: Configureer de firewall
Als u een firewall op uw Ubuntu-server hebt geactiveerd, moet u de VNC-poort vrijgeven om externe verbindingen toe te staan. Standaard gebruikt de VNC-server poort 5900, gevolgd door het weergavenummer. Voor weergave :1 is de poort dus 5901.
Open de poort met ufw:
sudo ufw allow 5901/tcpbashControleer de firewallregels om te controleren of de poort open is:
sudo ufw statusbashHier is een voorbeeld van een mogelijke uitvoer:
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)bashStap 9: Maak verbinding met de VNC-server
Om een verbinding met uw VNC-server tot stand te brengen, hebt u een VNC-client op uw lokale computer nodig. Populaire VNC-clients zijn RealVNC, TigerVNC Viewer en TightVNC Viewer. Om de veiligheid van uw VNC-verbinding te verbeteren, kunt u overwegen om een versleutelde verbinding via SSH te gebruiken. Dit beschermt de communicatie tussen uw VNC-client en de server.
Maak een verbinding met uw server via SSH en stuur de VNC-poort door:
ssh -L 59000:localhost:5901 -C -N -l <your-username>@<server-ip>bashssh: Het commando voor een veilige verbinding met een externe server via het SSH-protocol, dat gegevens in gecodeerde vorm verzendt.-L 59000:localhost:5901: Schakelt lokale poortdoorsturing in. Verkeer van poort 59000 op uw lokale computer wordt via de SSH-tunnel doorgestuurd naar poort 5901 op de externe server.localhostverwijst naar de externe server waarop de VNC-server draait.C: Activeert de compressie van dataverkeer. Dit kan de transmissiesnelheid verbeteren en het bandbreedtegebruik verminderen, vooral bij trage verbindingen.N: Voorkomt dat opdrachten op de externe server worden uitgevoerd. Deze modus is handig als u alleen de tunnel wilt instellen zonder een shell op de externe server te starten.-l <your-username>: Specificeert de gebruikersnaam waarmee u zich aanmeldt bij de externe server.<server-ip>: Het IP-adres of de hostnaam van de externe server waarmee u via SSH verbinding wilt maken.
Vervang <your-username> door uw gebruikersnaam en <server-ip> door het IP-adres van uw server.
Maak verbinding met de lokale poort 5901 die u via de SSH-tunnel hebt doorgestuurd door localhost:5901 in uw VNC-viewer in te voeren.
Deze methode garandeert dat uw VNC-verbinding via een versleutelde SSH-verbinding tot stand komt en daardoor veiliger is.
Stap 10: Beheer de VNC-server
Gebruik de volgende opdrachten om de VNC-server te stoppen of opnieuw te starten:
Stop VNC-server:
vncserver -kill :1bashVNC-server opnieuw opstarten:
vncserver :1bashVNC-server afsluiten (met systemd):
sudo systemctl stop vncserver@:1bashStatus controleren:
sudo systemctl status vncserver@1bashEen mogelijke uitvoer zou kunnen zijn:
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
. . .bashStap 11: Problemen oplossen
Als u problemen ondervindt, controleer dan het volgende:
- Logbestanden: De logbestanden voor de VNC-server bevinden zich in
~/.vnc. Controleer deze bestanden op foutmeldingen die kunnen wijzen op mogelijke problemen. - Netwerkverbinding: Zorg ervoor dat er geen netwerkbeperkingen of firewalls zijn die de toegang tot de VNC-poort blokkeren.
- Configuratiebestanden: Zorg ervoor dat er geen fouten zijn in de configuratie van de desktopomgeving in het bestand
~/.vnc/xstartup.
U hebt nu de mogelijkheid om uw bestanden en programma’s, evenals uw systeeminstellingen, gemakkelijk te beheren via een VNC-server. Als u liever Windows gebruikt, raden we u onze tutorial’VNC-server installeren op Windows’aan.