Sådan installeres en VNC-server på Ubuntu 22.04
Når du installerer en VNC-server på Ubuntu 22.04, får du mulighed for at få adgang til dit Linux-skrivebord, uanset hvor du befinder dig. Uanset om du arbejder hjemmefra, er på forretningsrejse eller blot ønsker at arbejde fra et andet rum – med en VNC-server har du altid adgang til dit arbejdsmiljø.
Hvad er fordelene ved en VNC-server på Ubuntu 22.04?
Brug af en VNC-server på Ubuntu 22.04 giver mange muligheder for at gøre det daglige arbejde meget nemmere. Med en VNC-server kan du få adgang til dit Ubuntu-skrivebord fra hvor som helst i verden. Det betyder, at du ikke behøver at sidde ved dit skrivebord for at administrere dine programmer og data. Denne fleksibilitet er yderst praktisk for fjernarbejdere, forretningsrejsende eller folk, der ønsker at arbejde fra forskellige steder. Desuden er det forholdsvis nemt at opsætte en VNC-server, så selv mindre teknisk kyndige brugere hurtigt kan etablere en fungerende fjernforbindelse.
En VNC-server fremmer også samarbejdet i teams. Den giver flere medlemmer mulighed for samtidig adgang til den samme skrivebord. Det gør det muligt for teams at arbejde effektivt sammen uanset deres placering, at samarbejde om projekter og løse problemer i realtid. IT-administratorer og support kan også løse fejl eksternt uden at skulle være til stede på stedet. Det sparer tid og omkostninger til rejser og ekstra aftaler. Med hensyn til sikkerhed har mange VNC-servere på Ubuntu 22.04 solide sikkerhedsfunktioner. Krypterede forbindelser og forskellige godkendelsesmetoder beskytter dine data og sikrer, at kun autoriserede personer har adgang til dit system.
Dette er kravene til en VNC-server på Ubuntu 22.04
Først og fremmest skal du have en fungerende installation af Ubuntu 22.04. Mange VNC-servere er fuldt kompatible med dette operativsystem, og alle nødvendige pakker og afhængigheder findes i de officielle Ubuntu-pakkelagre. Sørg for, at dit system er opdateret for at undgå eventuelle problemer under installationen. Generelt skal du opfylde følgende krav:
- Ubuntu 22.04: En fungerende og opdateret installation af Ubuntu 22.04.
- Netværksforbindelse: En stabil Ethernet- eller WLAN-forbindelse til fjernadgang.
- Root-rettigheder: VNC-serverbrugeren skal have root-rettigheder til installation og konfiguration.
- Softwarepakke: Installation af VNC-serversoftware, såsom TigerVNC, RealVNC eller x11vnc fra Ubuntu-repositorierne.
- Desktopmiljø: Det krævede desktopmiljø (f.eks. GNOME, XFCE) skal være installeret.
- Firewall-konfiguration: Åbn port 5900, eller juster firewall-reglerne for at tillade VNC-trafik.
Sådan installeres en VNC-server på Ubuntu 22.04
Der findes mange muligheder, når det gælder valg af VNC-server og skrivebordsmiljø. I denne vejledning installerer vi de nyeste pakker til XFCE-skrivebordsmiljøet og TigerVNC-pakken, som findes i det officielle Ubuntu-arkiv. Både XFCE og TigerVNC kræver få ressourcer og yder hurtig ydeevne. Derfor forbliver VNC-forbindelsen flydende og stabil, selv ved langsommere internetforbindelser.
Trin 1: Opdater pakker
Før du går i gang med installationen, skal du sikre dig, at dit system er opdateret. Udfør følgende kommandoer for at installere alle tilgængelige opdateringer:
sudo apt update
sudo apt upgradebashTrin 2: Installer skrivebordsmiljøet
VNC-serveren kræver et skrivebordsmiljø, da den leverer skrivebordet via netværket. Ubuntu 22.04 leveres som standard med GNOME, men du kan også installere andre skrivebordsmiljøer, såsom XFCE, som er særligt ressourcebesparende.
sudo apt install xfce4 xfce4-goodiesbashPakken xfce4-goodies indeholder yderligere nyttige værktøjer og plugins til XFCE.
Trin 3: Opret en ny bruger
Når du har installeret skrivebordsmiljøet, skal du oprette en ny bruger til at betjene VNC-serveren. Af sikkerhedsmæssige årsager anbefales det ikke at gøre dette som root-bruger. I dette tilfælde opretter vi en ny bruger ved navn »john« og giver ham de nødvendige rettigheder til at køre VNC-serveren under denne brugerkonto.
Først skal du oprette brugeren »john« og tildele ham en adgangskode. Det kan du gøre med følgende kommandoer:
sudo useradd -m -s /bin/bash john
sudo passwd johnbashKommandoen sudo useradd -m -s /bin/bash john opretter en ny bruger ved navn »john« og opretter en hjemmemappe, hvor standard-shell indstilles til /bin/bash. Brug derefter sudo passwd john til at indstille en adgangskode for denne bruger. Det er vigtigt at vælge en sikker adgangskode.
Når brugeren er oprettet, skal du føje vedkommende til sudo-gruppen, så vedkommende kan udføre administrative kommandoer. Det gør du med følgende kommando:
sudo usermod -aG sudo johnbashDenne kommando giver ‘john’ mulighed for at udføre kommandoer med udvidede rettigheder via sudo.
For at kontrollere, om »john« har de rette rettigheder, skal du logge ind som »john« og teste root-rettighederne. Det gør du ved at køre følgende kommandoer:
su - john
sudo subashVed at taste su - john skifter du til brugeren »john«, og ved at taste sudo su får du root-rettigheder, forudsat at adgangskoden er indtastet korrekt. Hvis godkendelsen lykkes, vises der en prompt som f.eks. root@hostname, der bekræfter, at du har root-rettigheder.
Trin 4: Installer VNC-serversoftwaren
I denne vejledning bruger vi TigerVNC, da det er en udbredt og velunderstøttet VNC-server. Installer TigerVNC med denne kommando:
sudo apt install tigervnc-standalone-server tigervnc-common tigervnc-toolsbashDenne installation installerer VNC-serversoftwaren samt nogle nødvendige standardpakker, der kræves for at programmet kan fungere.
Trin 5: Opret en VNC-serverinstans
Inden du kan starte VNC-serveren, skal du oprette en adgangskode, som er nødvendig for at få adgang til VNC-serveren. Indtast følgende kommando i terminalen:
vncserverbashDu bliver bedt om at indtaste og bekræfte en adgangskode. Denne adgangskode beskytter adgangen til din VNC-server. Du kan også vælge en indstilling, der opretter en adgangskode til visning, hvis du ønsker, at andre brugere kun skal kunne se skærmen, men ikke have kontrol over den.
Når serveren startes for første gang, oprettes der en ny skærm, typisk :1. I udskriften vises det nøjagtige nummer på den skærm, du kan bruge.
Her er et eksempel:
New 'X' desktop is your-machine-name:1bashNotér skærmnummeret (i dette tilfælde :1), da du skal bruge det for at oprette forbindelse til VNC-klienten.
Trin 6: Konfigurer VNC-serverinstansen
Opret en konfigurationsfil til VNC-serveren for at sikre, at XFCE indlæses, når VNC-serveren startes. Filen ~/.vnc/xstartup kan f.eks. have følgende indhold:
#!/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 &bashFilen bliver eksekverbar, når du bruger denne kommando:
chmod +x ~/.vnc/xstartupbashTrin 7: Kør VNC-serveren som en systemtjeneste
Ved at konfigurere VNC-serveren som en Systemd-tjeneste kan du starte, stoppe og genstarte den på samme måde som enhver anden tjeneste. Du kan også bruge Systemd-kommandoer til at starte VNC-serveren automatisk, når systemet starter op.
Start med at oprette en ny fil i et tekstredigeringsprogram efter eget valg:
nano /etc/systemd/system/vncserver@.servicebashIndsæt følgende indhold 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.targetbashErstat <your-username> med dit egentlige brugernavn. Indlæs den nye servicefil, og aktiver tjenesten:
sudo systemctl daemon-reload
sudo systemctl enable vncserver@1.service
sudo systemctl start vncserver@:1bashKommandoen sudo systemctl enable vncserver@1.service aktiverer VNC-servicetjenesten for skærm :1, så den starter automatisk næste gang systemet startes. Til dette bruges systemd-tjenestefilen vncserver@.service, hvor %i erstattes af 1. Dette gør det muligt at konfigurere VNC-serveren til skærm :1 og sikre, at den starter hver gang systemet starter op. Kommandoen opretter de nødvendige genveje for at inkludere tjenesten i den korrekte opstartsproces.
Trin 8: Konfigurer brandmuren
Hvis du har aktiveret en firewall på din Ubuntu-server, skal du åbne VNC-porten for at tillade fjernforbindelser. Som standard bruger VNC-serveren port 5900 efterfulgt af skærmnummeret. For skærm :1 er porten altså 5901.
Åbn port ufw:
sudo ufw allow 5901/tcpbashKontroller firewall-reglerne for at sikre dig, at porten er åben:
sudo ufw statusbashHer er et eksempel på et muligt 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)bashTrin 9: Opret forbindelse til VNC-serveren
For at oprette forbindelse til din VNC-server skal du have en VNC-klient installeret på din lokale computer. Populære VNC-klienter er RealVNC, TigerVNC Viewer og TightVNC Viewer. For at øge sikkerheden på din VNC-forbindelse bør du overveje at bruge en krypteret forbindelse via SSH. Dette sikrer kommunikationen mellem din VNC-klient og serveren.
Opret en forbindelse til din server via SSH, og videresend VNC-porten:
ssh -L 59000:localhost:5901 -C -N -l <your-username>@<server-ip>bashssh: Kommandoen til oprettelse af en sikker forbindelse til en fjernserver via SSH-protokollen, som overfører data i krypteret form.-L 59000:localhost:5901: Aktiverer lokal portvideresendelse. Trafik fra port 59000 på din lokale computer videresendes gennem SSH-tunnelen til port 5901 på fjernserveren.localhosthenviser til den fjernserver, hvor VNC-serveren kører.C: Aktiverer komprimering af datatrafik. Dette kan forbedre transmissionshastigheden og reducere båndbreddeforbruget, især ved langsomme forbindelser.N: Forhindrer, at kommandoer udføres på fjernserveren. Denne tilstand er nyttig, hvis du kun vil oprette tunnelen uden at starte en shell på fjernserveren.-l <your-username>: Angiver det brugernavn, du logger ind på fjernserveren med.<server-ip>: IP-adressen eller værtsnavnet på den fjernserver, som du vil oprette forbindelse til via SSH.
Erstat <your-username> med dit brugernavn og <server-ip> med din servers IP-adresse.
Opret forbindelse til den lokale port 5901, som du har videresendt via SSH-tunnelen, ved at indtaste localhost:5901 i din VNC-viewer.
Denne metode sikrer, at din VNC-forbindelse oprettes via en krypteret SSH-forbindelse og dermed er mere sikker.
Trin 10: Administrer VNC-serveren
Brug følgende kommandoer til at stoppe eller genstarte VNC-serveren:
Stop VNC-serveren:
vncserver -kill :1bashGenstart VNC-serveren:
vncserver :1bashAfslut VNC-serveren (med systemd):
sudo systemctl stop vncserver@:1bashTjek status:
sudo systemctl status vncserver@1bashEt muligt resultat kunne 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
. . .bashTrin 11: Fejlfinding
Hvis du støder på problemer, skal du tjekke følgende:
- Logfiler: Logfilerne for VNC-serveren findes i
~/.vnc. Gennemgå disse filer for fejlmeddelelser, der kan tyde på eventuelle problemer. - Netværksforbindelse: Sørg for, at ingen netværksbegrænsninger eller firewalls blokerer adgangen til VNC-porten.
- Konfigurationsfiler: Sørg for, at der ikke er fejl i konfigurationen af skrivebordsmiljøet i filen
~/.vnc/xstartup.
Du har nu mulighed for nemt at administrere dine filer og programmer samt dine systemindstillinger via en VNC-server. Hvis du foretrækker at bruge Windows, anbefaler vi vores vejledning»Installer VNC-server på Windows«.