Installando un server VNC su Ubuntu 22.04 puoi accedere al tuo desktop Linux ovunque ti trovi. Non importa se lavori da casa, se sei in viaggio o se hai semplicemente bisogno di spostarti da una stanza all’altra del tuo ufficio: con un server VNC puoi accedere facilmente e in ogni momento al tuo ambiente di lavoro.

Quali sono i vantaggi di un server VNC su Ubuntu 22.04?

Lavorare con un server VNC su Ubuntu 22.04 presenta numerosi vantaggi che facilitano notevolmente il lavoro quotidiano e lo rendono più flessibile. Con un server VNC puoi accedere al tuo desktop Ubuntu da qualsiasi parte del mondo, eliminando la necessità di essere fisicamente alla tua scrivania per gestire applicazioni e dati. Questa flessibilità è particolarmente utile per chi lavora da remoto, per chi viaggia per lavoro o per chi vuole semplicemente lavorare da postazioni diverse. Configurare un server VNC è semplice e intuitivo, rendendo il suo uso accessibile anche a chi non ha particolari conoscenze tecniche.

Una volta installato e configurato, facilita la collaborazione fra team, permettendo l’accesso simultaneo allo stesso desktop. In questo modo i membri del team possono collaborare a progetti e risolvere problemi in tempo reale, indipendentemente da dove si trovano. Anche gli amministratori di rete e l’assistenza tecnica possono intervenire facilmente da remoto per risolvere problemi senza dover essere presenti sul posto, risparmiando così tempo e costi legati alle trasferte. La maggior parte dei server VNC per Ubuntu 22.04 include opzioni avanzate di sicurezza, come connessioni crittografate e metodi di autenticazione efficaci. Con una connessione criptata solo gli utenti autorizzati possono accedere al sistema e le informazioni restano protette.

Requisiti necessari per installare un server VNC su Ubuntu 22.04

Prima di tutto, Ubuntu 22.04 deve essere installato e funzionante. La maggior parte dei server VNC è perfettamente compatibile con questa versione del sistema operativo. Tutti i pacchetti necessari, incluse le relative dipendenze, si trovano nei repository ufficiali di Ubuntu. Prima di procedere, assicurati che il sistema sia completamente aggiornato per evitare eventuali complicazioni durante il processo di installazione. Per poter installare un server VNC su Ubuntu 22.04 è necessario soddisfare i seguenti requisiti:

  • Ubuntu 22.04: deve essere installata la versione più recente di Ubuntu 22.04.
  • Connessione di rete: deve essere stata stabilita una connessione ethernet o Wi-Fi stabile per consentire l’accesso remoto.
  • Permessi di root: per eseguire l’installazione e la configurazione del server VNC sono richiesti permessi di root.
  • Pacchetti software: il software del server VNC (ad esempio TigerVNC, RealVNC o x11vnc) deve essere installato dai repository ufficiali di Ubuntu.
  • Ambiente desktop: deve essere installato l’ambiente desktop necessario (ad esempio GNOME o XFCE).
  • Configurazione del firewall: la porta 5900 deve essere aperta e il firewall deve essere configurato in modo tale da consentire il traffico VNC.
Novità: offerta VPS
Il tuo server virtuale a prezzi imbattibili

Prova il nostro VPS. I primi 30 giorni sono in omaggio e se allo scadere del periodo di prova non sarai convinto, ti rimborseremo tutte le spese sostenute.

Guida all’installazione di un server VNC su Ubuntu 22.04

Esistono numerosi server VNC e altrettanti ambienti desktop fra cui scegliere. In questa guida ti spieghiamo come installare l’ambiente desktop XFCE e il pacchetto TigerVNC, entrambi disponibili nel repository ufficiale di Ubuntu. XFCE è un ambiente desktop leggero e TigerVNC è un server VNC efficiente. Entrambi consumano poche risorse e hanno buone prestazioni, il che significa che la connessione sarà fluida e stabile anche in presenza di connessioni internet più lente.

Primo passaggio: aggiornare i pacchetti

Prima di avviare l’installazione assicurati che il sistema sia aggiornato. Esegui i seguenti comandi nel terminale per installare tutti gli aggiornamenti disponibili:

sudo apt update
sudo apt upgrade
bash

Secondo passaggio: installare l’ambiente desktop

Il server VNC ha bisogno di un ambiente desktop, poiché mette a disposizione il desktop attraverso la rete. Ubuntu 22.04 dispone di GNOME, l’ambiente desktop di sistema. In alternativa puoi installare altri ambienti desktop, ad esempio XFCE che è particolarmente leggero e offre prestazioni elevate.

sudo apt install xfce4 xfce4-goodies
bash

Il pacchetto xfce4-goodies presente nel comando qui sopra dispone di ulteriori strumenti e plugin utili per XFCE.

Terzo passaggio: creare un nuovo utente

Dopo aver installato l’ambiente desktop, per utilizzare il server VNC devi creare un nuovo utente. Per motivi di sicurezza ti consigliamo di non usare i dati dell’utente root. Nell’esempio qui sotto creiamo un nuovo utente chiamato “john” e gli assegniamo i permessi necessari per eseguire il server VNC da questo account.

Iniziamo creando l’utente “john” e assegnandogli una password. Questo il comando che dovrai digitare nel terminale:

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

Il comando sudo useradd -m -s /bin/bash john crea un nuovo utente chiamato “john”, impostando una directory home e configurando la shell predefinita su /bin/bash. Dopo aver creato l’utente, utilizza il comando sudo passwd john per impostare una password per questo account. Assicurati di scegliere una password sicura per garantire la sicurezza dell’utente.

Successivamente è importante aggiungere “john” al gruppo sudo, in modo che possa eseguire comandi amministrativi. Puoi farlo con il seguente comando:

sudo usermod -aG sudo john
bash

Questo comando consente all’utente “john” di eseguire operazioni con i privilegi estesi offerti da sudo.

Per verificare se “john” dispone delle autorizzazioni corrette, accedi come “john” e prova a controllare i permessi di root. A tal proposito usa il seguente comando:

su - john
sudo su
bash

Con su - john passi all’utente “john”, mentre utilizzando sudo su ottieni i permessi di root, sempre che tu abbia inserito la password correttamente. Se l’autenticazione è andata a buon fine comparirà un prompt come root@hostname, che conferma il possesso dei permessi di root.

Quarto passaggio: installare il software del server VNC

Per questa guida usiamo TigerVNC: si tratta di un’opzione server VNC ampiamente usata e ben supportata. Per installare TigerVNC digita il seguente comando nel terminale:

sudo apt install tigervnc-standalone-server tigervnc-common tigervnc-tools
bash

Questo comando installa il software del server VNC nonché tutti i pacchetti necessari per il funzionamento del server.

Quinto passaggio: creare un’istanza del server VNC

Prima di poter avviare il server VNC dovrai impostare una password, che ti servirà per accedere al server VNC. Digita il seguente comando nel terminale:

vncserver
bash

Una volta eseguito questo comando, ti verrà chiesto di inserire una password e di confermarla. Questa password protegge l’accesso al server VNC. Durante la configurazione puoi anche impostare una password di sola visualizzazione, utile se desideri consentire ad altri utenti di visualizzare il tuo schermo senza che lo possano controllare.

Alla prima attivazione del server si crea un nuovo display, solitamente identificato come :1. L’output del terminale ti indicherà il numero esatto del display che potrai utilizzare.

Di seguito il nostro esempio:

New 'X' desktop is your-machine-name:1
bash

Ricordati il numero del display (in questo caso :1), poiché ti servirà per collegarti con il client VNC.

Sesto passaggio: configurare l’istanza del server VNC

Per garantire che XFCE sia caricato automaticamente all’avvio del server VNC è necessario creare un file di configurazione chiamato xstartup nella directory ~/.vnc. Ad esempio il file ~/.vnc/xstartup può contenere il seguente codice:

#!/bin/sh
# Start up the standard system desktop
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
/usr/bin/startxfce4
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
x-window-manager &
bash

Utilizzando il seguente comando il file diventa eseguibile:

chmod +x ~/.vnc/xstartup
bash

Settimo passaggio: eseguire il server VNC come servizio di sistema

Impostare il server VNC come servizio systemd ti permette di gestirlo facilmente, proprio come qualsiasi altro servizio. Inoltre, puoi usare i comandi systemd per consentire al server VNC di avviarsi automaticamente all’accensione del sistema.

Prima di tutto, apri un editor di testo a tua scelta e crea un nuovo file:

nano /etc/systemd/system/vncserver@.service
bash

Inserisci nel file il seguente contenuto:

[Unit]
Description=Start TigerVNC server at startup
After=syslog.target network.target
[Service]
Type=forking
User=<your-username>
PAMName=login
PIDFile=/home/<your-username>/.vnc/%H:%i.pid
ExecStart=/usr/bin/vncserver %i
ExecStop=/usr/bin/vncserver -kill %i
[Install]
WantedBy=multi-user.target
bash

Sostituisci <your-username> con il tuo nome utente effettivo. Carica il nuovo file di servizio e attiva il servizio con i seguenti comandi:

sudo systemctl daemon-reload
sudo systemctl enable vncserver@1.service
sudo systemctl start vncserver@:1
bash

Il comando sudo systemctl enable vncserver@1.service attiva il servizio del server VNC per il display :1, di modo tale che questo si avvii automaticamente al successivo riavvio del sistema. A tal proposito si usa il file di servizio systemd vncserver@.service, in cui %i viene sostituito con 1. In questo modo, configuri il server VNC per il display :1 assicurandoti che venga avviato a ogni accensione del sistema. Il comando crea anche le scorciatoie necessarie per includere il servizio nel processo di avvio appropriato.

Ottavo passaggio: configurare il firewall

Se sul tuo server Ubuntu è attivato un firewall, devi aprire la porta VNC in modo da consentire le connessioni remote. Per impostazione predefinita il server VNC usa la porta 5900, seguita dal numero del display. Per il display :1 la porta sarà quindi 5901.

Ora apri la porta con ufw:

sudo ufw allow 5901/tcp
bash

Verifica le regole del firewall per controllare che la porta sia aperta:

sudo ufw status
bash

Di seguito un esempio di un possibile output:

Status: active
To                              Action          From
--                               ------          ----
22/tcp                           ALLOW            Anywhere
80/tcp                           ALLOW            Anywhere
443/tcp                          ALLOW           Anywhere
5901/tcp                        ALLOW            Anywhere
22/tcp (v6)                     ALLOW            Anywhere (v6)
80/tcp (v6)                     ALLOW            Anywhere (v6)
443/tcp (v6)                    ALLOW            Anywhere (v6)
5901/tcp (v6)                   ALLOW           Anywhere (v6)
bash

Nono passaggio: creare un collegamento con il server VNC

Per connetterti al server VNC hai bisogno di un client VNC sul tuo computer locale. I client VNC più diffusi sono RealVNC, TigerVNC Viewer e TightVNC Viewer. Per garantire una connessione VNC più sicura puoi utilizzare una connessione criptata tramite SSH. Questo protegge le comunicazioni tra il client VNC e il server.

Qui di seguito ti mostriamo come stabilire la connessione al server VNC via SSH, inoltrando la porta VNC:

ssh -L 59000:localhost:5901 -C -N -l <your-username>@<server-ip>
bash
  • ssh: comando per stabilire una connessione sicura a un server remoto tramite SSH, il protocollo che cripta i dati prima di trasmetterli.
  • -L 59000:localhost:5901: abilita l’inoltro della porta locale. Attraverso il tunnel SSH, il traffico di dati viene inoltrato dalla porta 59000 sul computer locale alla porta 5901 del server remoto. localhost si riferisce al server remoto su cui è in esecuzione il server VNC.
  • C: abilita la compressione del traffico SSH, che può migliorare le prestazioni, soprattutto su connessioni lente, riducendo l’utilizzo della larghezza di banda.
  • N: impedisce l’esecuzione di comandi sul server remoto. Questo modulo è utile quando si vuole solo creare il tunnel SSH senza aprire una shell sul server remoto.
  • -l <your-username>: specifica il nome utente che utilizzi per connetterti al server remoto.
  • <server-ip>: questo è l’indirizzo IP o il nome host del server remoto a cui desideri connetterti tramite SSH.
N.B.

Sostituisci <your-username> con il tuo nome utente e <ip server> con l’indirizzo IP del tuo server.

Collegati alla porta locale 5901 che hai inoltrato tramite il tunnel SSH, inserendo localhost:5901 nel visualizzatore VNC.

Questo metodo assicura che la connessione VNC venga stabilita mediante un tunnel SSH criptato, garantendo maggiore sicurezza durante l’accesso remoto.

Decimo passaggio: controllare il server VNC

Per arrestare o riavviare il server VNC, puoi utilizzare i seguenti comandi:

Arrestare il server VNC:

vncserver -kill :1
bash

Riavviare il server VNC:

vncserver :1
bash

Terminare il server VNC (con systemd):

sudo systemctl stop vncserver@:1
bash

Verificare lo status:

sudo systemctl status vncserver@1
bash

Di seguito ti presentiamo un possibile output:

vncserver@1.service - Start TigerVNC server at startup
      Loaded: loaded (/etc/systemd/system/vncserver@.service; enabled; vendor preset: enabled)
      Active: active (running) since Mon 2024-07-29 16:57:26 UTC; 20s ago
     Process: 97088 ExecStartPre=/usr/bin/vncserver -kill :1 > /dev/null 2>&1 (code=exited, status=2)
     Process: 97092 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 -localhost :1 (code=exited, status=0/SUCCESS)
    Main PID: 97103 (Xtigervnc)
        Tasks: 77 (limit: 4665)
      Memory: 146.7M
          CPU: 4.459s
      CGroup: /system.slice/system-vncserver.slice/vncserver@1.service
. . .
bash

Undicesimo passaggio: risoluzione dei problemi

In caso di problemi con il server VNC, verifica i seguenti punti:

  • File di log: i file di log del server VNC si trovano nella directory ~/.vnc. Controlla questi file per individuare eventuali messaggi di errore o possibili problemi.
  • Connessioni di rete: assicurati che il firewall o altre restrizioni di rete non blocchino l’accesso alla porta VNC.
  • File di configurazione: verifica che il file ~/.vnc/xstartup non contenga errori di configurazione dell’ambiente desktop.

Ora hai la possibilità di gestire comodamente i tuoi file e programmi nonché le impostazioni del sistema tramite un server VNC. Se preferisci usare Windows, ti consigliamo di leggere la nostra guida su come installare un server VNC su Windows.

Server dedicati
Performance e innovazione
  • Hardware dedicato al 100%
  • Fatturazione al minuto
  • Potenziato dai processori Intel® Xeon® e AMD
Hai trovato questo articolo utile?
Vai al menu principale