I Virtual Network Computing (o VNC) sono software di controllo remoto e servono per amministrare il proprio computer a distanza.
Il sistema è composto da un server e da un viewer (client). I VNC server sono dei software da installare sulla macchina da controllare a distanza e rappresentano un modo comodo per poter gestire molti computer in rete (Internet o Intranet che siano) utilizzando una sola postazione, la quale deve essere munita di un viewer che permette di vedere e utilizzare le periferiche del computer da controllare.
installando un server VNC sulla propria macchina ed impostando una opportuna password si consente ai client VNC di ricevere una immagine dello schermo e di inviare input di tastiera e mouse al computer server tramite una connessione remota. In pratica si può gestire il computer server da un’altra postazione, come se fosse il proprio computer fisico (applicazione di desktop remoto).
PRE-REQUISITI
Ubuntu Server 16.04
Un PC Client con TightVNC installato
Un PC Client con un client SSH
INSTALLAZIONE DEL SERVER VNC
Prima di tutto aggiorniamo il repository con il comando:
0 |
sudo apt-get update |
Sul server installare i pacchetti Xfce e TightVNC con il comando:
0 |
sudo apt install xfce4 xfce4-goodies tightvncserver |
Per completare la configurazione iniziale del server VNC dopo l’installazione e impostare una password sicura lanciare il comando:
0 |
vncserver |
Verrà richiesto di inserire e verificare una password e anche una password di sola visualizzazione.
Gli utenti che accedono con la password di sola visualizzazione non saranno in grado di controllare l’istanza VNC con il mouse o la tastiera.
Questa è un’opzione utile se vuoi dimostrare qualcosa ad altre persone usando il tuo server VNC, ma non è necessario.
L’esecuzione di vncserver completa l’installazione di VNC creando i file di configurazione e le informazioni di connessione predefiniti per il nostro server.
Con questi pacchetti installati, sei pronto per configurare il tuo server VNC.
CONFIGURAZIONE DEL SERVER VNC
Visto che stiamo andando a cambiare la configurazione del server VNC, avremo bisogno di fermare prima l’istanza del server VNC che è in esecuzione sulla porta 5901 con il comando:
0 |
vncserver -kill :1 |
Se è OK dovremmo ricevere un messagio tipo:
0 |
Killing Xtightvnc process ID 20118 |
Prima di configurare il nuovo file Xstartup, facciamo un backup dell’originale con il comando:
0 |
mv ~/.vnc/xstartup ~/.vnc/xstartup.bak |
Creare un nuovo file Xstartup con il comando:
0 |
sudo nano ~/.vnc/xstartup |
Incollare questi comandi nel file in modo che vengano eseguiti automaticamente ogni volta che si avvia o si riavvia il server VNC, quindi salvare e chiudere il file.
0 1 2 |
#!/bin/bash xrdb $HOME/.Xresources startxfce4 & |
Per garantire che il server VNC sarà in grado di utilizzare correttamente questo nuovo file di avvio, avremo bisogno di concedere i privilegi eseguibili ad esso con il comando:
0 |
sudo chmod +x ~/.vnc/xstartup |
Avviare quindi il server VNC con il comando:
0 |
vncserver |
Se è partito tutto correttamente dovremmo vedere le seguenti righe:
0 1 2 |
New 'X' desktop is server-linux:1 Starting applications specified in /home/rchiatto/.vnc/xstartup Log file is /home/rchiatto/.vnc/server-linux:1.log |
TEST DI CONNESSIONE CON IL VNC VIEWER
Dal nostro PC aprire il tightVNC
Quindi richiamare l’IP o il nome del nsotro server seguito da ::5901
IP-SERVER::5901
Inserire la Password settata in precedenza quindi cliccare OK
Se è andato tutto liscio dovremmo vedere il desktop del nostro server
CREAZIONE DEL SERVIZIO VNC
Configuriamo il server VNC come un servizio systemd.
Ciò renderà possibile l’avvio, l’arresto e il riavvio secondo necessità, come qualsiasi altro servizio systemd.
0 |
sudo nano /etc/systemd/system/vncserver@.service |
Copiare e incollare quanto segue.
Assicurati di cambiare il valore di Utente e il nome utente nel valore di PIDFILE in modo che corrisponda al tuo nome utente.
Nel mi caso l’utente è: rchiatto
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
[Unit] Description=Start TightVNC server at startup After=syslog.target network.target [Service] Type=forking User=rchiatto PAMName=login PIDFile=/home/rchiatto/.vnc/%H:%i.pid ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 :%i ExecStop=/usr/bin/vncserver -kill :%i [Install] WantedBy=multi-user.target |
Salvare e chiudere il file.
Lanciare il comando:
0 |
sudo systemctl daemon-reload |
quindi abilitare il servizio con il comando:
0 |
sudo systemctl enable vncserver@1.service |
Se è tutto corretto dovremmo vedere la seguente riga:
0 |
Created symlink from /etc/systemd/system/multi-user.target.wants/vncserver@1.service to /etc/systemd/system/vncserver@.service. |
A questo punto stoppiamo il servizio vncserver con il comando:
0 |
vncserver -kill :1 |
Dovremmo vedere la seguente riga:
0 |
Killing Xtightvnc process ID 5164 |
Quindi avviare il servizio vncserver come servizio systemd con il comando:
0 |
sudo systemctl start vncserver@1 |
Per vedere lo status del servizio lanciare il comando:
0 |
sudo systemctl status vncserver@1 |
Se è tutto Ok dovremmo vedere una schermata come quella sovrastante
Riavviare il server per rendere effettive le modifiche.
Prova ad installare il pacchetto gnome magari fa al caso tuo anche se Linux funziona bene da riga di comando…
Parlo del classico menu’ che in windows si chiama start.
Come se su ubuntu. 16 non ci fosse istallato niente e quel poco che c’e’ e’ non funzionante.
Alla fine bisogna sempre lavorare da terminale. Anche le installazioni e disistallazioni non vanno
Di quale menu parli? Ciao
ciao. volevo chiederti, come mai, su ubuntu18.04 ho il menu’ completo mentre su ubuntu16.04 il menu’ è limitato????
come si potrebbe fare ad avere un menu’ completo?