Ricerca nel sito web

Come installare VNC Server su Debian 11


Su questa pagina

  1. Prerequisiti
  2. Installazione dell'ambiente desktop
  3. Creazione di un nuovo utente Linux
  4. Installazione di TigerVNC Server Debian 11
  5. Configurazione di XFCE come ambiente desktop predefinito
  6. Aggiunta dell'utente a TigerVNC e avvio del servizio
  7. Connessione sicura al server VNC con il tunneling SSH
  8. Conclusione

Virtual Network Computing (VNC) è un protocollo di condivisione desktop che consente di controllare un computer in remoto utilizzando il software client VNC. VNC funziona su ambienti GUI (Graphical User Interface), trasmette i movimenti del mouse e l'input della tastiera sulla rete utilizzando il protocollo RFB (Remote Frame Buffer).

Comunemente, VNC viene utilizzato dai tecnici per controllare i desktop dei clienti o utilizzato da qualcuno che deve accedere al proprio desktop in ufficio da casa. VNC può essere utilizzato in modo sicuro attraverso la rete VPN o utilizzando la connessione di tunneling SSH.

In questo tutorial imparerai come installare un server VNC su Debian 11 Bullseye. Questo tutorial utilizza i pacchetti TigerVNC per abilitare il server VNC e imparerai anche come installare Desktop Environment (DE) come Gnome, XFCE, desktop Mate. Infine, imparerai come connetterti al tuo server VNC tramite una connessione di tunneling SSH sicura.

Prerequisiti

Prima di iniziare, assicurati di disporre dei seguenti requisiti:

  • Un server Debian 11 Bullseye con almeno 1 GB di RAM. Se hai intenzione di utilizzare DE moderno per il tuo server VNC, avrai bisogno di più di 1 GB di RAM. Puoi usare un DE più leggero se hai un server con solo 1 GB di RAM.
  • Un utente non root con privilegi di root. Oppure puoi usare l'utente root.

Installazione dell'ambiente desktop

Per iniziare con il server VNC, dovrai installare Desktop Environment (DE) sul tuo sistema. Su Linux sono disponibili vari DE, puoi installare DE come preferisci. Puoi installare DE leggero come XFCE o Mate Desktop su un server con risorse ridotte oppure puoi installare DE moderno come Gnome su un server con risorse elevate.

In questa sezione installerai DE sul sistema Debian 11. Scegli tra i seguenti DE: desktop Gnome, XFCE o Mate come DE preferito.

1. Per installare l'ambiente desktop, innanzitutto aggiornare l'indice del pacchetto eseguendo il comando apt di seguito.

sudo apt aggiornamento

2. Ora, installa il tuo DE preferito eseguendo il seguente comando.

Installa XFCE Desktop usando il seguente comando.

sudo apt install task-xfce-desktop dbus-x11

Se preferisci il desktop Mate, installalo usando il seguente comando.

sudo apt install task-mate-desktop dbus-x11

E per il desktop GNOME, puoi usare il comando qui sotto.

sudo apt install task-gnome-desktop dbus-x11

Ora che hai installato DE sul tuo sistema, il prossimo passo in questo tutorial è creare un nuovo utente e installare i pacchetti TigerVNC.

Creazione di un nuovo utente Linux

Sebbene sia possibile utilizzare l'utente root per il server VNC, per motivi di sicurezza si consiglia di utilizzare un utente non root. In questa sezione, creerai un nuovo utente e lo aggiungerai al gruppo sudo. Ciò consente all'utente di ottenere i privilegi di root utilizzando il comando sudo.

1. Eseguire il seguente comando per aggiungere un nuovo utente e impostare la password. In questo esempio, creeremo un nuovo utente johndoe.

sudo useradd -m -s /bin/bash johndoe
passwd johndoe

L'opzione -m creerà automaticamente una home directory per il nuovo utente. l'opzione -s /bin/bash è usata per specificare la shell per il nuovo utente, digitare il percorso completo della shell binaria.

Questo comando richiederà una password. Inserisci la tua password sicura e ripetila.

2. Ora, aggiungi il tuo nuovo utente al gruppo sudo eseguendo il seguente comando. Ciò consente all'utente di ottenere i privilegi di root ed eseguire l'applicazione utilizzando i privilegi di root.

sudo usermod -aG sudo johndoe

3. Successivamente, accedi come nuovo utente e verifica i privilegi di root sudo utilizzando il comando seguente.

su - johndoe
sudo su

Ti verrà richiesta la password. Inserisci la tua password e premi INVIO. Di conseguenza, il tuo prompt diventerà [email , il che significa che sei diventato root.

Installazione di TigerVNC Server Debian 11

In questa sezione installerai i pacchetti TigerVNC e configurerai VNC Server sul tuo sistema Debian 11. Ciò include la configurazione di un server VNC per un utente specifico con la sua autenticazione e la configurazione del DE predefinito. Il server VNC funziona come per utente, ogni utente ha il suo display specifico, la configurazione DE e il servizio systemd.

1. Per installare i pacchetti TigerVNC, eseguire il comando apt di seguito.

sudo apt install tigervnc-standalone-server tigervnc-common -y

2. Ora hai installato i pacchetti TigerVNC. Successivamente, accedi come utente non root, quindi inizializza il server VNC eseguendo il seguente comando.

su - johndoe
vncserver

3. Ti verrà richiesto di creare una nuova password per il tuo server VNC. Inserisci la tua password e ripetila. La password non deve contenere più di 8 caratteri, altrimenti verrà rifiutata.

You will require a password to access your desktops.

Password:
Verify:

4. Ora ti verrà chiesto di creare una password di sola visualizzazione. Questo è utile quando vuoi condividere il tuo server VNC ma dà solo accesso di sola visualizzazione. Per ora, non ne abbiamo bisogno, digita n per no e premi INVIO.

Would you like to enter a view-only password (y/n)? n

5. Al termine dell'inizializzazione, riceverai il seguente output. Puoi evidenziare questo output bullseye64:1 (johndoe), il che significa che il server VNC è in esecuzione sul server bullseye64 con il display :1 come l'utente johndoe.

New Xtigervnc server 'bullseye64:1 (johndoe)' on port 5901 for display :1.
User xtigervncviewer -SecurityTypes VncAuth -passwd /home/johndoe/.vnc/passwd :1 to connecto to the VNC server.

Configurazione di XFCE come ambiente desktop predefinito

A questo punto, hai inizializzato il server VNC per il tuo utente. Tutte le configurazioni relative al server VNC vengono generate nella directory ~/.vnc. Successivamente, imposterai il DE predefinito per il tuo server VNC.

1. Prima di iniziare, termina la visualizzazione :1 del server VNC eseguendo il seguente comando.

vncserver -kill bullseye64:1

Otterrai l'output come di seguito.

Killing Xtigervnc process ID 1635... success!

2. Per impostare DE predefinito per il server VNC, dovrai modificare/creare di nuovo il file xstartup nella directory ~/.vnc. Questo script verrà eseguito automaticamente quando il server VNC è in esecuzione.

mv ~/.vnc/xstartup ~/.vnc/xstartup.bak
nano ~/.vnc/xstartup

3. Immettere il seguente script nel file. E assicurati di cambiare startxfce4 con il comando per avviare il tuo DE. Questo esempio utilizza XFCE come DE predefinito.

bash
#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &

Salva e chiudi il file.

4. Ora rendi eseguibile lo script xstartup eseguendo il seguente comando.

chmod +x ~/.vnc/xstartup

Ora hai completato la configurazione del DE predefinito per il tuo server VNC.

Aggiunta dell'utente a TigerVNC e avvio del servizio

Per far funzionare il server TigerVNC, dovrai aggiungere il tuo utente e il numero del display al file /etc/tigervnc/vncserver.users, quindi avviare e abilitare il servizio TigerVNC.

1. Modifica il file vncserver.users utilizzando nano o il tuo editor preferito.

sudo nano /etc/tigervnc/vncserver.users

Definire il numero del display seguito dall'utente come di seguito. Questo esempio utilizza il numero visualizzato :1 per l'utente johndoe.

:1=johndoe

Salva ed esci dal file.

2. Successivamente, eseguire il seguente comando per avviare e abilitare il servizio TigerVNC per il numero di display: 1. Se hai più utenti e server VNC, cambia il numero di visualizzazione per ogni utente come :2, :3, e vai avanti.

sudo systemctl enable --now :1.service

3. Ora, verifica lo stato del servizio TigerVNC eseguendo il seguente comando.

sudo systemctl status :1.service

Riceverai l'output come lo screenshot qui sotto. Il servizio TigerVNC per display :1 è attivo (in esecuzione) ed è in esecuzione con il desktop XFCE.

Connessione sicura al server VNC con SSH Tunneling

A questo punto, hai completato l'installazione del server VNC su Debian 11 Bullseye con i pacchetti TigerVNC. In questa sezione, ti connetterai al tuo server VNC in modo sicuro attraverso il tunneling SSH.

1. Prima di iniziare, assicurati di aver installato VNC Viewer sul tuo computer/laptop locale. Puoi utilizzare RealVNC Viewer, che può essere installato su sistemi Linux, Windows e macOS.

2. Ora, per avviare SSH Tunneling, esegui il comando ssh di seguito sul tuo computer locale. E assicurati di cambiare il nome utente e l'indirizzo IP 192.168.1.10 con l'indirizzo IP del tuo server VNC.

ssh -L 5901:127.0.0.1:5901 -N -f -l username t 192.168.1.10

Opzioni che devi conoscere:

  • L'opzione -L 5901:127.0.0.1:5901 crea il processo di tunneling.
  • -N impedisce agli utenti di eseguire il comando remoto al server SSH.
  • -f fa passare ssh in background.
  • -l username specifica il tuo nome utente per ssh.

Questo comando creerà il tunneling sul localhost con la porta 5901 al server 192.168.1.10 sulla porta 5901. Ora puoi connetterti al tuo server VNC utilizzando il localhost con la porta 5901.

3. Apri l'applicazione visualizzatore VNC e connettiti a localhost:5901 come di seguito. Ti verrà chiesta la password per il tuo server VNC. Inserisci la tua password corretta.

4. Una volta connesso al server VNC, vedrai il desktop del tuo server VNC. Di seguito è riportato lo screenshot del desktop XFCE.

In questa sezione, ti sei connesso correttamente al server VNC in modo sicuro tramite il tunneling SSH.

Conclusione

In questo tutorial, hai imparato l'installazione del server VNC su Debian 11 Bullseye usando TigerVNC. Inoltre, hai imparato l'installazione di vari ambienti desktop sul sistema Debian e come configurare DE predefinito e configurare TigerVNC come applicazione server VNC.

Alla fine, hai imparato come connetterti al tuo server VNC in modo sicuro attraverso il tunneling SSH dal tuo computer locale al server VNC.