Hur man installerar en VNC-server på Ubuntu 22.04
Genom att installera en VNC-server på Ubuntu 22.04 får du möjlighet att komma åt din Linux-dator var du än befinner dig. Oavsett om du arbetar hemifrån, är på affärsresa eller bara vill arbeta från ett annat rum – med en VNC-server har du alltid tillgång till din arbetsmiljö.
Vilka är fördelarna med en VNC-server på Ubuntu 22.04?
Att använda en VNC-server på Ubuntu 22.04 erbjuder många möjligheter att göra det dagliga arbetet mycket enklare. Med en VNC-server kan du komma åt ditt Ubuntu-skrivbord var som helst i världen. Det innebär att du inte behöver sitta vid ditt skrivbord för att hantera dina program och data. Denna flexibilitet är extremt praktisk för distansarbetare, affärsresenärer eller personer som vill arbeta från olika platser. Dessutom är det relativt enkelt att konfigurera en VNC-server, så även mindre tekniskt kunniga användare kan snabbt upprätta en fungerande fjärranslutning.
En VNC-server främjar också samarbetet inom team. Den gör det möjligt för flera medlemmar att samtidigt få åtkomst till samma skrivbord. Detta gör att team kan arbeta effektivt tillsammans oavsett var de befinner sig, arbeta med projekt tillsammans och lösa problem i realtid. IT-administratörer och support kan också lösa fel på distans utan att behöva vara på plats. Detta sparar tid och kostnader för resor och extra möten. När det gäller säkerhet har många VNC-servrar på Ubuntu 22.04 robusta alternativ. Krypterade anslutningar och olika autentiseringsmetoder skyddar dina data och säkerställer att endast behöriga personer har tillgång till ditt system.
Detta är kraven för en VNC-server på Ubuntu 22.04
Först behöver du en fungerande installation av Ubuntu 22.04. Många VNC-servrar är fullt kompatibla med detta operativsystem och alla nödvändiga paket och beroenden finns i de officiella Ubuntu-arkiven. Se till att ditt system är uppdaterat för att undvika eventuella komplikationer under installationen. I allmänhet bör du uppfylla följande krav:
- Ubuntu 22.04: En fungerande och uppdaterad installation av Ubuntu 22.04.
- Nätverksanslutning: En stabil Ethernet- eller WLAN-anslutning för fjärråtkomst.
- Root-behörighet: VNC-serverns användare behöver root-behörighet för installation och konfiguration.
- Programpaket: Installation av VNC-serverprogramvara, såsom TigerVNC, RealVNC eller x11vnc från Ubuntu-arkiven.
- Skrivbordsmiljö: Den erforderliga skrivbordsmiljön (t.ex. GNOME, XFCE) bör vara installerad.
- Brandväggskonfiguration: Öppna port 5900 eller justera brandväggsreglerna för att tillåta VNC-trafik.
Hur man installerar en VNC-server på Ubuntu 22.04
Det finns många alternativ när det gäller att välja en VNC-server och skrivbordsmiljö. I den här handledningen installerar vi de senaste paketen för skrivbordsmiljön XFCE och paketet TigerVNC som finns tillgängliga i det officiella Ubuntu-arkivet. Både XFCE och TigerVNC kräver få resurser och har snabb prestanda. Det gör att VNC-anslutningen förblir smidig och stabil även med långsammare internetanslutningar.
Steg 1: Uppdatera paket
Innan du påbörjar installationen, se till att ditt system är uppdaterat. Kör följande kommandon för att installera alla tillgängliga uppdateringar:
sudo apt update
sudo apt upgradebashSteg 2: Installera skrivbordsmiljön
VNC-servern kräver en skrivbordsmiljö eftersom den tillhandahåller skrivbordet över nätverket. Ubuntu 22.04 levereras med GNOME som standard, men du kan också installera andra skrivbordsmiljöer, till exempel XFCE, som är särskilt lättviktig.
sudo apt install xfce4 xfce4-goodiesbashPaketet xfce4-goodies innehåller ytterligare användbara verktyg och plugins för XFCE.
Steg 3: Skapa en ny användare
När du har installerat skrivbordsmiljön måste du skapa en ny användare för att kunna använda VNC-servern. Av säkerhetsskäl rekommenderas det att inte göra detta som root-användare. I det här fallet skapar vi en ny användare med namnet ”john” och ger honom de behörigheter som krävs för att köra VNC-servern under detta användarkonto.
Först måste du skapa användaren “john” och tilldela honom ett lösenord. Du kan göra detta med följande kommandon:
sudo useradd -m -s /bin/bash john
sudo passwd johnbashKommandot sudo useradd -m -s /bin/bash john skapar en ny användare “john” och konfigurerar en hemkatalog, där standardskalet ställs in till /bin/bash. Använd sedan sudo passwd john för att ställa in ett lösenord för denna användare. Det är viktigt att välja ett säkert lösenord.
När användaren har skapats måste du lägga till den i sudo-gruppen så att den kan utföra administrativa kommandon. Det gör du med följande kommando:
sudo usermod -aG sudo johnbashDetta kommando gör det möjligt för “john” att utföra kommandon med utökade rättigheter som tillhandahålls med sudo.
För att kontrollera om “john” har rätt behörigheter, logga in som “john” och testa root-rättigheterna. För att göra detta, kör följande kommandon:
su - john
sudo subashMed su - john byter du till användaren “john” och med sudo su får du root-rättigheter, förutsatt att lösenordet har angetts korrekt. Om autentiseringen lyckas visas en prompt som root@hostname, som bekräftar att du har root-rättigheter.
Steg 4: Installera VNC-serverprogramvaran
I den här handledningen använder vi TigerVNC, eftersom det är en populär och välstödd VNC-server. Installera TigerVNC med följande kommando:
sudo apt install tigervnc-standalone-server tigervnc-common tigervnc-toolsbashDenna post installerar VNC-serverprogramvaran samt några nödvändiga gemensamma paket som krävs för driften.
Steg 5: Skapa VNC-serverinstansen
Innan du kan starta VNC-servern måste du ange ett lösenord som krävs för att få åtkomst till VNC-servern. Ange följande kommando i terminalen:
vncserverbashDu kommer att bli ombedd att ange och bekräfta ett lösenord. Detta lösenord skyddar åtkomsten till din VNC-server. Du kan också välja ett alternativ för att ställa in ett lösenord för visning endast om du vill att andra användare endast ska kunna se skärmen utan att ha kontroll över den.
När servern startas för första gången skapas en ny skärm, vanligtvis :1. Utmatningen visar det exakta numret på den skärm som du kan använda.
Här är ett exempel:
New 'X' desktop is your-machine-name:1bashNotera displaynumret (i detta fall :1), eftersom du behöver det för att ansluta till VNC-klienten.
Steg 6: Konfigurera VNC-serverinstansen
Skapa en konfigurationsfil för VNC-servern för att säkerställa att XFCE laddas när VNC-servern startas. Filen ~/.vnc/xstartup kan till exempel ha följande innehåll:
#!/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 blir körbar när du använder följande kommando:
chmod +x ~/.vnc/xstartupbashSteg 7: Kör VNC-servern som en systemtjänst
Genom att konfigurera VNC-servern som en Systemd-tjänst kan du starta, stoppa och starta om den precis som vilken annan tjänst som helst. Du kan också använda Systemd-kommandon för att starta VNC-servern automatiskt när systemet startar upp.
Skapa först en ny fil med ett textredigeringsprogram efter eget val:
nano /etc/systemd/system/vncserver@.servicebashLägg till följande innehåll 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.targetbashErsätt <your-username> med ditt faktiska användarnamn. Ladda den nya tjänstefilen och aktivera tjänsten:
sudo systemctl daemon-reload
sudo systemctl enable vncserver@1.service
sudo systemctl start vncserver@:1bashKommandot sudo systemctl enable vncserver@1.service aktiverar VNC-servertjänsten för skärm :1 så att den startar automatiskt nästa gång systemet startas. Systemd-tjänstfilen vncserver@.service används för detta, där %i ersätts med 1. Detta gör det möjligt att konfigurera VNC-servern för skärm :1 och säkerställa att den startar varje gång systemet startas. Kommandot skapar de genvägar som behövs för att inkludera tjänsten i rätt startprocess.
Steg 8: Konfigurera brandväggen
Om du har aktiverat en brandvägg på din Ubuntu-server måste du frigöra VNC-porten för att tillåta fjärranslutningar. Som standard använder VNC-servern port 5900, följt av displaynumret. För display :1 är alltså porten 5901.
Öppna porten med ufw:
sudo ufw allow 5901/tcpbashKontrollera brandväggsreglerna för att säkerställa att porten är öppen:
sudo ufw statusbashHär är ett exempel på ett möjligt 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)bashSteg 9: Anslut till VNC-servern
För att upprätta en anslutning till din VNC-server behöver du en VNC-klient på din lokala dator. Populära VNC-klienter är RealVNC, TigerVNC Viewer och TightVNC Viewer. För att förbättra säkerheten för din VNC-anslutning bör du överväga att använda en krypterad anslutning via SSH. Detta skyddar kommunikationen mellan din VNC-klient och servern.
Upprätta en anslutning till din server via SSH och vidarebefordra VNC-porten:
ssh -L 59000:localhost:5901 -C -N -l <your-username>@<server-ip>bashssh: Kommandot för säker anslutning till en fjärrserver via SSH-protokollet, som överför data i krypterad form.-L 59000:localhost:5901: Aktiverar lokal portvidarebefordran. Trafik från port 59000 på din lokala dator vidarebefordras via SSH-tunneln till port 5901 på fjärrservern.localhostavser den fjärrserver på vilken VNC-servern körs.C: Aktiverar komprimering av datatrafik. Detta kan förbättra överföringshastigheten och minska bandbreddsanvändningen, särskilt vid långsamma anslutningar.N: Förhindrar att kommandon exekveras på fjärrservern. Detta läge är användbart om du bara vill konfigurera tunneln utan att starta ett skal på fjärrservern.-l <your-username>: Anger det användarnamn som du loggar in med på fjärrservern.<server-ip>: IP-adressen eller värdnamnet för den fjärrserver som du vill ansluta till via SSH.
Ersätt <your-username> med ditt användarnamn och <server-ip> med IP-adressen till din server.
Anslut till den lokala porten 5901 som du vidarebefordrade via SSH-tunneln genom att ange localhost:5901 i din VNC-visare.
Denna metod garanterar att din VNC-anslutning sker via en krypterad SSH-anslutning och är därför säkrare.
Steg 10: Hantera VNC-servern
För att stoppa eller starta om VNC-servern använder du följande kommandon:
Stoppa VNC-servern:
vncserver -kill :1bashStarta om VNC-servern:
vncserver :1bashAvsluta VNC-servern (med systemd):
sudo systemctl stop vncserver@:1bashKontrollera status:
sudo systemctl status vncserver@1bashEtt möjligt resultat skulle kunna vara:
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
. . .bashSteg 11: Felsökning
Om du stöter på problem, kontrollera följande:
- Loggfiler: Loggfilerna för VNC-servern finns i
~/.vnc. Kontrollera dessa filer för felmeddelanden som kan indikera möjliga problem. - Nätverksanslutning: Se till att inga nätverksbegränsningar eller brandväggar blockerar åtkomsten till VNC-porten.
- Konfigurationsfiler: Se till att det inte finns några fel i konfigurationen av skrivbordsmiljön i filen
~/.vnc/xstartup.
Du har nu möjlighet att enkelt hantera dina filer och program samt dina systeminställningar via en VNC-server. Om du föredrar att använda Windows rekommenderar vi vår handledning”Installera VNC-server på Windows”.

