Remote Desktop Access With RealVNC on Linux Debian 9
Innehållsförteckning:
- förutsättningar
- Installera skrivbordsmiljö
- Installera VNC-server
- Konfigurera VNC-server
- Skapa en systemd-enhetsfil
- Ansluter till VNC-server
- Ställ in SSH-tunnel på Linux och macOS
- Ställ in SSH-tunnel på Windows
- Slutsats
Denna handledning beskriver hur du installerar och konfigurerar VNC-server på ett Debian 9-system. Vi kommer också att visa dig hur du skapar en SSH-tunnel och säkert ansluter till VNC-servern.
Virtual Network Computing (VNC) är ett grafiskt system för delning av skrivbord som gör att du kan använda tangentbordet och musen för att fjärrstyra en annan dator.
förutsättningar
Innan du fortsätter med självstudien, se till att du är inloggad som användare med sudo-behörigheter.
Installera skrivbordsmiljö
Chansen är stor att din Debian-server inte har skrivbordsmiljö installerad. Vårt första steg är att installera en lätt skrivbordsmiljö.
Det finns flera skrivbordsmiljöer (DE) tillgängliga i Debian-lagrar. I den här tutorialen använder vi Xfce som vår skrivbordsmiljö som du väljer. Det är en snabb, stabil och lätt, vilket gör den idealisk för användning på en fjärrserver.
Uppdatera paketindex och installera Xfce på din Debian-server med följande kommandon:
sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
Beroende på ditt system kan det ta lite tid att ladda ner och installera Xfce-paketen.
Installera VNC-server
Det finns också flera olika VNC-servrar tillgängliga i Debian-lagrar som TightVNC, TigerVNC och x11vnc. Varje VNC-server har sina styrkor och svagheter vad gäller hastighet och säkerhet.
Vi kommer att använda TigerVNC, som aktivt upprätthålls högpresterande VNC-server. Följ följande kommando för att installera TigerVNC på din Debian-server:
sudo apt install tigervnc-standalone-server tigervnc-common
När VNC-servern är installerad, kör
vncserver
kommandot för att skapa den initiala konfigurationen och konfigurera lösenordet. Använd inte sudo när du kör följande kommando:
vncserver
Du blir ombedd att ange och bekräfta lösenordet och om du vill ställa in det som visningslösenord. Om du väljer att ställa in ett lösenord som bara är synligt kan användaren inte interagera med VNC-instansen med musen och tangentbordet.
You will require a password to access your desktops. Password: Verify: Would you like to enter a view-only password (y/n)? n /usr/bin/xauth: file /home/linuxize/.Xauthority does not exist New 'debian9.localdomain:1 (linuxize)' desktop at:1 on machine debian9.localdomain Starting applications specified in /etc/X11/Xvnc-session Log file is /home/linuxize/.vnc/debian9.localdomain:1.log Use xtigervncviewer -SecurityTypes VncAuth -passwd /home/linuxize/.vnc/passwd:1 to connect to the VNC server.
När du kör
vncserver
kommandot för första gången skapar och lagrar det lösenordet i katalogen
~/.vnc
.
Notera
:1
efter värdnamnet i utgången ovan. Detta indikerar visningsportnumret som vnc-servern körs på. I vårt fall kör servern på TCP-port
5901
(5900 + 1). Om du skapar en andra instans med
vncserver
kommer den att köras på nästa gratisport, dvs
:2
vilket betyder att servern körs på port
5902
(5900 + 2).
Det som är viktigt att notera är att när du arbetar med VNC-servrar
:X
är en visningsport som refererar till
5900+X
Innan du fortsätter med nästa steg, stoppa VNC-instansen med kommandot
vncserver
med ett
-kill
alternativ och
-kill
som ett argument. I vårt fall kör servern i port 5901 (
:1
), så vi stoppar den med:
vncserver -kill:1
Killing Xtigervnc process ID 6677… success!
Konfigurera VNC-server
Nu när både Xfce och TigerVNC är installerade på servern måste vi konfigurera TigerVNC för att använda Xfce. Så här skapar du följande fil:
nano ~/.vnc/xstartup
~ /.Vnc / Xstartup
#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4
När du är klar sparar och stänger du filen. Skriptet ovan kommer att köras automatiskt när du startar eller startar om TigerVNC-servern.
~/.vnc/xstartup
filen måste också ha exekverande behörigheter. Kör följande
chmod
kommando för att se till att rättigheterna är korrekta:
chmod u+x ~/.vnc/xstartup
~ /.Vnc / config
Skapa en systemd-enhetsfil
Systemd-enhetsfilen gör att vi enkelt kan starta, stoppa och starta om VNC-tjänsten efter behov.
Öppna din textredigerare och kopiera och klistra in följande konfiguration i den. Glöm inte att ändra användarnamnet i rad 7 för att matcha ditt användarnamn.
sudo nano /etc/systemd/system/[email protected]
/etc/systemd/system/[email protected]
Description=Remote desktop service (VNC) After=syslog.target network.target Type=simple User=linuxize PAMName=login PIDFile=/home/%u/.vnc/%H%i.pid ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill:%i > /dev/null 2>&1 ||:' ExecStart=/usr/bin/vncserver:%i -geometry 1440x900 -alwaysshared -fg ExecStop=/usr/bin/vncserver -kill:%i WantedBy=multi-user.target
Spara och stäng filen.
Meddela systemd till att en ny
[email protected]
finns genom att köra följande kommando:
sudo systemctl daemon-reload
Aktivera sedan tjänsten:
sudo systemctl enable [email protected]
Siffran
1
efter
@
-tecknet definierar visningsporten som VNC-tjänsten ska köras på. Som vi diskuterade i föregående avsnitt eftersom vi använder
1
VNC-servern att lyssna på port
5901
.
Starta VNC-tjänsten genom att köra:
sudo systemctl start [email protected]
Kontrollera att tjänsten har startats med:
sudo systemctl status [email protected]
● [email protected] - Remote desktop service (VNC) Loaded: loaded (/etc/systemd/system/[email protected]; enabled; vendor preset: enabled) Active: active (running) since Wed 2018-10-03 05:23:33 PDT; 51s ago Process: 7063 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill:1 > /dev/null 2>&1 ||: (code=exited, status=0/SUCCESS) Main PID: 7071 (vncserver) Tasks: 0 (limit: 4915) CGroup: /system.slice/system-vncserver.slice/[email protected] ‣ 7071 /usr/bin/perl /usr/bin/vncserver:1 -geometry 1440x900 -alwaysshared -fg
Ansluter till VNC-server
VNC är inte ett krypterat protokoll och kan bli föremål för paket snifning. Det rekommenderade tillvägagångssättet är att skapa en SSH-tunnel som säkert kommer att vidarebefordra trafik från din lokala maskin på port 5901 till servern i samma port.
Ställ in SSH-tunnel på Linux och macOS
ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address
Du blir ombedd att ange användarlösenordet.
Glöm inte att byta ut
username
och
server_ip_address
med ditt användarnamn och din serverns IP-adress.
Ställ in SSH-tunnel på Windows
Öppna Kitt och ange din server IP-adress i fältet
Host name or IP address
.




Just nu har du anslutit dig till din server via VNC. Du kan nu börja interagera med fjärrskrivbordet XFCE från din lokala maskin med ditt tangentbord och mus.
Slutsats
Nu bör du ha en VNC-server igång och du kan enkelt hantera din Debian 9-server från din lokala dator med ett grafiskt gränssnitt.
För att konfigurera din VNC-server så att den startar en skärm för mer än en användare, skapar du den initiala konfigurationen och konfigurerar lösenordet med kommandot
vncserver
. Du måste också skapa en ny tjänstefil med en annan port.
Lämna gärna en kommentar om du har några frågor.
debian vncHur man installerar och konfigurerar redis på debian 10 linux
I denna handledning täcker vi hur du installerar och konfigurerar Redis på en Debian 10, Buster. Redis är ett öppet källkodsdatalager i minnet.
Hur du installerar och konfigurerar vnc på centos 7
I den här tutorialen kommer vi att leda dig genom stegen för att installera och konfigurera en VNC-server på ett CentOS 7-system. Vi kommer också att visa dig hur du säkert kan ansluta till VNC-servern via en SSH-tunnel.
Hur du installerar och konfigurerar vnc på ubuntu 18.04
Den här guiden behandlar de steg som krävs för att installera och konfigurera VNC-server på ett Ubuntu 18.04-system. Vi kommer också att visa dig hur du säkert kan ansluta till VNC-servern via en SSH-tunnel.







