Android

Hur man installerar och konfigurerar vnc på debian 9

Remote Desktop Access With RealVNC on Linux Debian 9

Remote Desktop Access With RealVNC on Linux Debian 9

Innehållsförteckning:

Anonim

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

geometry=1920x1084 dpi=96

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 vnc