Questo articolo ti mostrerà come configurare un VNC su Ubuntu Server 20.04.
Virtual Network Computing (VNC) è una tecnologia di condivisione grafica del desktop che ti consente di controllare un altro computer utilizzando la tastiera e il mouse.
Prerequisiti
Prima di continuare con il tutorial, assicurati di aver effettuato l'accesso come utente con privilegi sudo.
Installazione dell'ambiente desktop
È improbabile che il tuo server Ubuntu abbia un ambiente desktop installato. La prima cosa che dobbiamo fare è configurare un ambiente desktop leggero.
Nel repository di Ubuntu troverai una varietà di ambienti desktop (DE). Il nostro ambiente desktop preferito sarà Xfce. È leggero, veloce e stabile, il che lo rende adatto all'uso su un server remoto.
Aggiorna l'indice dei pacchetti e installa Xfce sul tuo server Ubuntu con i seguenti comandi:
$ sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
Potrebbe volerci del tempo per scaricare e installare i pacchetti Xfce, a seconda della tua macchina.
Installazione di VNC su Ubuntu
TightVNC, TigerVNC e x11vnc sono solo alcuni dei server VNC accessibili nel repository di Ubuntu. In termini di velocità e sicurezza, ogni server VNC offre vantaggi e svantaggi.
Utilizzeremo TigerVNC, un server VNC ad alte prestazioni che viene mantenuto attivamente. Esegui il seguente comando per installare TigerVNC sul tuo server Ubuntu:
$ sudo apt install tigervnc-standalone-server tigervnc-common
Prova il server VNC
Una volta installato il server VNC, eseguire il comando vncserver 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 tua password, nonché se desideri che sia di sola visualizzazione. L'utente non sarà in grado di interagire con l'istanza VNC con il mouse o la tastiera se si sceglie di impostare una password di sola visualizzazione.
Il file della password viene creato e archiviato nella directory /.vnc quando esegui il comando vncserver per la prima volta.
Nell'output sopra, prendi nota di:1 dopo il nome host. Questo è il numero della porta di visualizzazione su cui è in esecuzione il server vnc. Il server è in ascolto sulla porta TCP 5901 (5900+1) nel nostro caso. Se utilizzi vncserver per creare una seconda istanza, questa verrà eseguita sulla successiva porta disponibile, che è 2, il che significa che il server verrà eseguito sulla porta 5902 (5900+2).
Vale la pena notare che mentre si lavora con i server VNC,:X corrisponde a 5900+X come porta display.
Arresta l'istanza VNC utilizzando il comando vncserver con l'opzione -kill e il numero del server come argomento prima di passare al passaggio successivo. Poiché in questo esempio il server è in ascolto sulla porta 5901 (:1), lo spegneremo con:
$ vncserver -kill :1
Configurazione del server VNC
È necessario configurare TigerVNC per utilizzare Xfce ora che sia Xfce che TigerVNC sono installati sulla workstation. Crea il seguente file per farlo:
$ vim ~/.vnc/xstartup
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4
Salva e chiudi il file quando hai finito. Quando avvii o riavvii il server TigerVNC, lo script sopra verrà eseguito automaticamente.
Le autorizzazioni di esecuzione sono richieste anche per il file /.vnc/xstartup. Per assicurarti che i permessi siano corretti, usa il seguente comando chmod:
$ chmod u+x ~/.vnc/xstartup
Creazione di un file di unità Systemd
Possiamo facilmente avviare, arrestare e riavviare il servizio VNC utilizzando il file dell'unità systemd.
Copia le seguenti impostazioni nel tuo editor di testo e incollalo. Ricorda di modificare il nome utente sulla riga 7 in modo che corrisponda al tuo.
$ sudo vim /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=ubuntu
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.
Esegui il comando seguente per dire a systemd che è stato creato un nuovo file [email protected]:
$ sudo systemctl daemon-reload
Quindi, abilita il servizio:
$ sudo systemctl enable [email protected]
La porta di visualizzazione su cui verrà eseguito il servizio VNC è definita dal numero 1 dopo il simbolo @. Poiché stiamo usando 1 nella sezione precedente, il server VNC ascolterà sulla porta 5901.
Esegui il comando seguente per avviare il servizio VNC:
$ sudo systemctl start [email protected]
Verifica che il servizio sia stato avviato correttamente con:
$ sudo systemctl status [email protected]
Connessione al server VNC
È ora di avviare Vncviewer e connetterti al tuo server VNC.
È possibile utilizzare qualsiasi visualizzatore VNC, inclusi TigerVNC, TightVNC, RealVNC, UltraVNC, Vinagre e VNC Viewer per Google Chrome.
Useremo TigerVNC in questo esempio. Apri il tuo visualizzatore VNC, digita l'ip del tuo server:5901 nella barra degli indirizzi, quindi premi il pulsante Connetti.
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 possibile utilizzare la tastiera e il mouse per interagire con il desktop XFCE remoto dalla workstation locale.
Installa VNC su Ubuntu – Conclusione
A questo punto dovresti avere un server VNC attivo e funzionante e dovresti essere in grado di far funzionare il tuo server Ubuntu utilizzando un'interfaccia grafica dal tuo computer locale.
Utilizzando il comando vncserver, creare la configurazione iniziale e specificare la password per il server VNC per avviare una visualizzazione per più di un utente. È necessario creare anche un nuovo file di servizio con una porta diversa.
Dai un'occhiata ad alcuni dei nostri altri tutorial