Hvordan installere og konfigurere VNC Server på Ubuntu


Virtual Network Computing (VNC) er et mye brukt grafisk skrivebordsdelingssystem som lar brukerkontoer eksternt koble til og kontrollere skrivebordsgrensesnittet til én datamaskin fra en annen datamaskin eller mobilenhet .

I denne artikkelen vil vi forklare hvordan du installerer og konfigurerer en VNC-server på en Ubuntu 18.04 Desktop-utgave via tigervnc-server-program.

Testmiljø

VNC Server: 192.168.56.108
VNC Client: 192.168.56.2

Installer et skrivebordsmiljø i Ubuntu

Som jeg sa, VNC er et skrivebordsdelingssystem, så du må ha et skrivebordsmiljø installert på Ubuntu-serveren. Du kan installere DE du ønsker ved å kjøre de aktuelle kommandoene nedenfor. For formålet med denne artikkelen vil vi installere Ubuntu Gnome (offisiell smak).

sudo apt-get install ubuntu-desktop		#Default Ubuntu desktop
sudo apt install ubuntu-gnome-desktop	        #Ubuntu Gnome (Official flavor)
sudo apt-get install xfce4			#LXDE
sudo apt-get install lxde			#LXDE
sudo apt-get install kubuntu-desktop		#KDE

Installer og konfigurer en VNC i Ubuntu

Tigervnc-server er et høyhastighets VNC-program med flere plattformer som kjører en Xvnc-server og starter parallelle økter med Gnome eller andre skrivebordsmiljøer på VNC-skrivebordet.

For å installere TigerVNC-serveren og andre tilknyttede pakker i Ubuntu, kjør følgende kommando.

sudo apt install tigervnc-standalone-server tigervnc-common tigervnc-xorg-extension tigervnc-viewer

Start nå VNC-serveren ved å kjøre vncserver-kommandoen som en vanlig bruker. Denne handlingen vil opprette den første konfigurasjonen som er lagret i $HOME/.vnc-katalogen, og den vil også be deg om å sette opp et påloggingspassord.

Skriv inn et passord (som må være på minst seks tegn) og bekreft/bekreft det. Sett deretter et visningspassord hvis du ønsker det, som følger.

vncserver
ls -l ~/.vnc 

Deretter må vi konfigurere DE til å fungere med VNCserveren. Så stopp VNC-serveren ved å bruke følgende kommando for å utføre noen konfigurasjoner.

vncserver -kill :1

For å konfigurere GNOME eller hvilket som helst skrivebord du har installert, lag en fil kalt xstartup under konfigurasjonskatalogen ved å bruke din favoritt tekstredigerer.

vi ~/.vnc/xstartup

Legg til følgende linjer i filen. Disse kommandoene vil bli utført automatisk hver gang du starter eller starter TigerVNC-serveren på nytt. Merk at kommandoene kan variere avhengig av DE du installerte.

#!/bin/sh
exec /etc/vnc/xstartup
xrdb $HOME/.Xresources
vncconfig -iconic &
dbus-launch --exit-with-session gnome-session &

Lagre filen og angi riktig tillatelse for filen slik at den kan kjøres.

chmod 700 ~/.vnc/xstartup

Deretter starter du VNC-serveren ved å kjøre følgende kommando som en vanlig bruker. Still inn dine egne verdier for skjermgeometrien. I tillegg, bruk -localhost-flagget for å tillate tilkoblinger fra localhost kun og analogt, kun fra brukere som er autentisert på serveren.

I tillegg bruker VNC som standard TCP-port 5900+N, der N er visningsnummeret. I dette tilfellet betyr :1 at VNC-serveren vil kjøre på displayportnummer 5901.

vncserver :1 -localhost -geometry 1024x768 -depth 32

For å liste VNC-serversesjoner på systemet ditt, kjør følgende kommando.

vncserver -list

Når VNC-serveren har startet, sjekk porten den kjører på med netstat-kommandoen.

netstat -tlnp

Koble til VNC Server via VNC Client

I denne delen vil vi vise hvordan du kobler til VNC-serveren, men før vi går inn på det, må du vite at VNC som standard ikke er sikker som standard (det er ikke en kryptert protokoll og kan være gjenstand for pakkesniffing) . Dette problemet kan løses ved å opprette en tunnel fra klient til server-tilkobling gjennom SSH.

Ved å bruke SSH-tunnelering kan du sikkert videresende trafikk fra din lokale maskin på port 5901 til VNC-serveren på samme port.

På Linux-klientmaskin, åpne et nytt terminalvindu og kjør følgende kommando for å lage en SSH-tunnel til VNC-server.

ssh -i ~/.ssh/ubuntu18.04 -L 5901:127.0.0.1:5901 -N -f -l tecmint 192.168.56.108

Installer deretter vncviewer-klienten som TigerVNC Viewer som følger s(du kan installere hvilken som helst annen klient du ønsker).

sudo apt install tigervnc-viewer		#Ubuntu/Debian
sudo yum install tigervnc-viewer		#CnetOS/RHEL
sudo yum install tigervnc-viewer		#Fedora 22+
sudo zypper install tigervnc-viewer	        #OpenSUSE
sudo pacman -S tigervnc			#Arch Linux

Når installasjonen er fullført, kjør VNC-klienten, spesifiser adressen localhost:5901 for å koble til displayet 1 som følger.

vncviewer localhost:5901

Alternativt kan du åpne den fra systemmenyen, skrive inn adressen ovenfor og deretter klikke Koble til.

Du vil bli bedt om å angi VNC-påloggingspassordet som ble opprettet tidligere, skriv det inn og klikk OK for å fortsette.

Hvis passordet er riktig, vil du lande i innloggingsgrensesnittet på skrivebordet ditt. Skriv inn passordet ditt for å få tilgang til skrivebordet.

Obs: Hvis du er sikkerhetsbevisst, har du kanskje lagt merke til at VNC-visningsprogrammet viser «tilkobling ikke kryptert» selv om vi har aktivert SSH-tunnelering.

Dette er fordi det er designet for å bruke andre spesifikke sikkerhetssystemer enn SSH-tunnelering når du prøver å autentisere med serveren. Tilkoblingen er imidlertid sikker når du har aktivert SSH-tunneling.

Opprette en Systemd Unit File for TigerVNC Server

For å administrere VNC-serveren under systemd, dvs. starte, stoppe og starte VNC-tjenesten på nytt etter behov, må vi opprette en enhetsfil for den under /etc/systemd/system/-katalogen, med root-privilegier.

sudo vim /etc/systemd/system/[email 

Legg deretter til følgende linjer i filen:

[Unit] 
Description=Remote desktop service (VNC) 
After=syslog.target network.target 

[Service] 
Type=simple 
User=tecmint 
PAMName=login 
PIDFile=/home/%u/.vnc/%H%i.pid 
ExecStartPre=/usr/bin/vncserver -kill :%i > /dev/null 2>&1 || :
ExecStart=/usr/bin/vncserver :%i -localhost no -geometry 1024x768 
ExecStop=/usr/bin/vncserver -kill :%i 

[Install] 
WantedBy=multi-user.target

Lagre filen og lukk den.

Last deretter systemd manager-konfigurasjonen på nytt for å lese den nyopprettede enhetsfilen, som følger.

sudo systemctl daemon-reload

Start deretter VNC-tjenesten, aktiver den til å automatisk starte ved systemoppstart og sjekk statusen som vist.


sudo systemctl start vncserver@1
sudo systemctl enable vncserver@1
sudo systemctl status vncserver@1

Det er alt! I denne artikkelen har vi forklart hvordan du installerer og konfigurerer VNC-server på Ubuntu Linux-distribusjon. Del dine spørsmål eller tanker med oss via tilbakemeldingsskjemaet nedenfor.