GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare e configurare VNC su Debian 9

Questo tutorial descrive come installare e configurare un server VNC su Debian 9. Ti mostreremo anche come creare un tunnel SSH e connetterti in modo sicuro al server VNC.

Virtual Network Computing (VNC) è un sistema grafico di condivisione desktop che consente di utilizzare la tastiera e il mouse per controllare in remoto un altro computer.

Prerequisiti #

Prima di continuare con il tutorial, assicurati di aver effettuato l'accesso come utente con privilegi sudo.

Installazione dell'ambiente desktop #

È probabile che il tuo server Debian non disponga di un ambiente desktop installato. Il nostro primo passo è installare un ambiente desktop leggero.

Ci sono diversi ambienti desktop (DE) disponibili nei repository Debian. Utilizzeremo Xfceas il nostro ambiente desktop preferito. È veloce, stabile e leggero, il che lo rende ideale per l'utilizzo su un server remoto.

Aggiorna l'indice dei pacchetti e installa Xfce sul tuo server Debian con i seguenti comandi:

sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils

A seconda del tuo sistema, il download e l'installazione dei pacchetti Xfce potrebbe richiedere del tempo.

Installazione del server VNC #

Ci sono anche diversi server VNC disponibili nei repository Debian come TightVNC, TigerVNC e x11vnc. Ogni server VNC ha i suoi punti di forza e di debolezza in termini di velocità e sicurezza.

Utilizzeremo TigerVNC, che è un server VNC ad alte prestazioni gestito attivamente. Per installare TigerVNC sul tuo server Debian emetti il ​​seguente comando:

sudo apt install tigervnc-standalone-server tigervnc-common

Una volta installato il server VNC, esegui vncserver comando per creare la configurazione iniziale e impostare la password. Non utilizzare sudo durante l'esecuzione del comando seguente:

vncserver

Ti verrà chiesto di inserire e confermare la password e se impostarla come password di sola visualizzazione. Se scegli di impostare una password di sola visualizzazione, l'utente non sarà in grado di interagire con l'istanza VNC con il mouse e la tastiera.

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.

Quando esegui vncserver comando per la prima volta, creerà e memorizzerà il file della password nel ~/.vnc directory.

Nota il :1 dopo il nome host nell'output sopra. Indica il numero della porta di visualizzazione su cui è in esecuzione il server vnc. Nel nostro caso, il server è in esecuzione sulla porta TCP 5901 (5900+1). Se crei una seconda istanza con vncserver verrà eseguito sulla prossima porta libera, ad esempio :2 , il che significa che il server è in esecuzione sulla porta 5902 (5900+2).

Ciò che è importante notare è che quando si lavora con i server VNC, :X è una porta display che fa riferimento a 5900+X .

Prima di procedere con il passaggio successivo, arresta l'istanza VNC utilizzando vncserver comando con un -kill opzione e il numero del server come argomento. In questo caso il server è in esecuzione nella porta 5901 (:1 ), quindi lo fermeremo con:

vncserver -kill :1
Killing Xtigervnc process ID 6677... success!

Configurazione del server VNC #

Ora che sia Xfce che TigerVNC sono installati sulla macchina, è necessario configurare TigerVNC per utilizzare Xfce. Per farlo, crea il seguente file:

nano ~/.vnc/xstartup
~/.vnc/xstartup
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4 

Al termine, salva e chiudi il file. Lo script sopra verrà eseguito automaticamente ogni volta che avvii o riavvii il server TigerVNC.

Il ~/.vnc/xstartup il file deve anche avere i permessi di esecuzione. Esegui il seguente chmod comando per assicurarsi che i permessi siano corretti:

chmod u+x ~/.vnc/xstartup

Se devi passare opzioni aggiuntive al server VNC, puoi creare un file chiamato config e aggiungi un'opzione per riga. Ecco un esempio:

~/.vnc/config
geometry=1920x1080
dpi=96

Creazione di un file di unità Systemd #

Il file dell'unità di sistema ci consentirà di avviare, arrestare e riavviare facilmente il servizio VNC secondo necessità.

Apri il tuo editor di testo e copia e incolla la seguente configurazione al suo interno. Non dimenticare di cambiare il nome utente sulla riga 7 in modo che corrisponda al tuo nome utente.

sudo nano /etc/systemd/system/[email protected]
/etc/systemd/system/[email protected]
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
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

[Install]
WantedBy=multi-user.target

Salva e chiudi il file.

Notifica a systemd che un nuovo [email protected] file esiste eseguendo il comando seguente:

sudo systemctl daemon-reload

Quindi, abilita il servizio:

sudo systemctl enable [email protected]

Il numero 1 dopo il @ sign definisce la porta di visualizzazione su cui verrà eseguito il servizio VNC. Come abbiamo discusso nella sezione precedente poiché stiamo usando 1 il server VNC ascolterà sulla porta 5901 .

Avvia il servizio VNC eseguendo:

sudo systemctl start [email protected]

Verifica che il servizio sia stato avviato correttamente con:

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

Connessione al server VNC #

VNC non è un protocollo crittografato e può essere soggetto a packet sniffing. L'approccio consigliato è creare un tunnel SSH che inoltri in modo sicuro il traffico dal tuo computer locale sulla porta 5901 al server sulla stessa porta.

Configura il tunneling SSH su Linux e macOS #

Se esegui Linux, macOS o qualsiasi altro sistema operativo basato su Unix sulla tua macchina, puoi facilmente creare un tunnel SSH con ssh comando:

ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address

Ti verrà chiesto di inserire la password utente.

Non dimenticare di sostituire username e server_ip_address con il tuo nome utente e l'indirizzo IP del tuo server.

Configura il tunneling SSH su Windows #

Se esegui Windows, puoi configurare il tunneling SSH utilizzando il client SSH PuTTY.

Apri Putty e inserisci l'indirizzo IP del tuo server nel Host name or IP address campo.

Sotto il Connection menu, espandi SSH e seleziona Tunnels . Immettere la porta del server VNC (5901 ) nel Source Port campo e inserisci server_ip_address:5901 nella Destination campo e fare clic su Add pulsante come mostrato nell'immagine qui sotto:

Torna alla Session pagina per salvare le impostazioni in modo che non sia necessario inserirle ogni volta. Ora non devi fare altro che selezionare la sessione salvata e accedere al server remoto facendo clic su Open pulsante.

Connessione tramite Vncviewer #

Ora che hai impostato il tunneling SSH, è il momento di aprire il tuo Vncviewer e di connetterti al server VNC su localhost:5901 .

Puoi utilizzare qualsiasi visualizzatore VNC come TigerVNC, TightVNC, RealVNC, UltraVNC, Vinagre e VNC Viewer per Google Chrome.

In questo esempio, useremo TigerVNC. Apri il tuo visualizzatore VNC, inserisci localhost:5901 e fai clic su Connect pulsante.

Inserisci la tua password quando richiesto e dovresti vedere il desktop Xfce predefinito. Dovrebbe assomigliare a questo:

A questo punto, ti sei connesso con successo al tuo server tramite VNC. Ora puoi iniziare a interagire con il desktop XFCE remoto dal tuo computer locale usando la tastiera e il mouse.


Debian
  1. Come installare e configurare VNC su Ubuntu 20.04

  2. Come installare e configurare OpenVPN Server su Debian 10

  3. Come installare e configurare il server VNC su Debian 10

  4. Installare e configurare VNC su Debian 9 - Processo passo dopo passo?

  5. Come installare e configurare Squid Proxy su Debian 11

Come installare e configurare il server VNC su CentOS 7

Come installare e configurare Apache Web Server su Debian 11

Come installare e configurare Git in Debian 11

Come installare e configurare VNC su Ubuntu Server 20.04

Come installare VNC su Debian 10

Come installare il server VNC su Debian 11