Come installare e configurare VNC su Ubuntu 18.04

Introduzione

Virtual Network Computing, o VNC, è un sistema di connessione che consente di utilizzare la tastiera e il mouse per interagire con un ambiente desktop grafico su un server remoto. Rende la gestione di file, software e impostazioni su un server remoto più facile per gli utenti che non sono ancora a proprio agio con la riga di comando.

In questa guida, si imposta un server VNC su un server Ubuntu 18.04 e connettersi ad esso in modo sicuro attraverso un tunnel SSH. Userai TightVNC, un pacchetto di controllo remoto veloce e leggero., Questa scelta farà in modo che la nostra connessione VNC sarà liscia e stabile anche su connessioni Internet più lente.

Prerequisiti

Per completare questo tutorial, è necessario:

  • Un server Ubuntu 18.04 impostato seguendo la guida all’installazione iniziale del server Ubuntu 18.04, incluso un utente non root sudo e un firewall.
  • Un computer locale con un client VNC installato che supporta le connessioni VNC su tunnel SSH.
    • Su Winows, è possibile utilizzare TightVNC, RealVNC o UltraVNC.,
    • Su macOS, è possibile utilizzare il programma integrato di condivisione dello schermo, o può utilizzare un cross-platform app come RealVNC.
    • Su Linux, è possibile scegliere tra molte opzioni, tra cui vinagre, krdc, RealVNC o TightVNC.

Passo 1 — Installazione dell’ambiente desktop e del server VNC

Per impostazione predefinita, un server Ubuntu 18.04 non viene fornito con un ambiente desktop grafico o un server VNC installato, quindi inizieremo installandoli., In particolare, installeremo i pacchetti per l’ultimo ambiente desktop Xfce e il pacchetto TightVNC disponibile nel repository ufficiale di Ubuntu.,”>

installare l’ambiente desktop Xfce sul server:

  • sudo apt install xfce4 xfce4-goodies

una Volta completata l’installazione, installare il server TightVNC:

  • sudo apt install tightvncserver

Per completare il VNC server di configurazione iniziale dopo l’installazione, utilizzare il vncserver comando per impostare una password di sicurezza e creare iniziale del file di configurazione:

  • vncserver

Ti verrà richiesto di immettere e confermare una password per accedere al computer in remoto:

Output
You will require a password to access your desktops.Password:Verify:

La password deve essere compresa tra i sei e gli otto caratteri., Password più di 8 caratteri verranno troncati automaticamente.

Una volta verificata la password, avrai la possibilità di creare 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 si desidera dimostrare qualcosa ad altre persone che utilizzano il server VNC, ma questo non è richiesto.

Il processo crea quindi i file di configurazione predefiniti necessari e le informazioni di connessione per il server:

Ora configuriamo il server VNC.,

Passo 2 — Configurazione del server VNC

Il server VNC deve sapere quali comandi eseguire all’avvio. In particolare, VNC ha bisogno di sapere a quale desktop grafico dovrebbe connettersi.

Questi comandi si trovano in un file di configurazione chiamatoxstartup nella cartella.vnc nella directory home. Lo script di avvio è stato creato quando hai eseguito vncserver nel passaggio precedente, ma creeremo il nostro per avviare il desktop Xfce.,

Quando VNC viene impostato per la prima volta, avvia un’istanza server predefinita sulla porta 5901. Questa porta è chiamata display port, ed è indicata da VNC come :1. VNC può lanciare più istanze su altre porte di visualizzazione, come :2, :3, e così via.,rver è configurato, prima di interrompere il server VNC istanza che è in esecuzione sulla porta 5901 con il seguente comando:

  • vncserver -kill :1

L’output dovrebbe essere simile a questo, anche se vedrete un altro PID:

Output
Killing Xtightvnc process ID 17648

Prima di modificare il xstartup file, eseguire il backup originale:

  • mv ~/.vnc/xstartup ~/.vnc/xstartup.bak

e ‘ Ora di creare un nuovo xstartup file e aprirlo in un editor di testo:

  • nano ~/.vnc/xstartup

i Comandi in questo file vengono eseguiti automaticamente ogni volta che si avvia o riavvia il server VNC., Abbiamo bisogno di VNC per avviare il nostro ambiente desktop se non è già stato avviato. Aggiungi questi comandi al file:

~/.vnc / xstartup
#!/bin/bashxrdb $HOME/.Xresourcesstartxfce4 &

Il primo comando del file,xrdb $HOME/.Xresources, indica al framework GUI di VNC di leggere il file.Xresources dell’utente del server. .Xresources è dove un utente può apportare modifiche a determinate impostazioni del desktop grafico, come i colori del terminale, i temi del cursore e il rendering dei font., Il secondo comando dice al server di lanciare Xfce, che è dove si trova tutto il software grafico che è necessario gestire comodamente il server.

Per garantire che il server VNC sarà in grado di utilizzare correttamente questo nuovo file di avvio, avremo bisogno di renderlo eseguibile.

  • sudo chmod +x ~/.vnc/xstartup

Ora, riavviare il server VNC.

  • vncserver

Vedrai un output simile a questo:

Con la configurazione in atto, connettiamoci al server dalla nostra macchina locale.,

Passo 3 — Collegamento sicuro del desktop VNC

VNC stesso non utilizza protocolli sicuri durante la connessione. Useremo un tunnel SSH per connetterci in modo sicuro al nostro server e quindi diremo al nostro client VNC di utilizzare quel tunnel piuttosto che effettuare una connessione diretta.

Crea una connessione SSH sul tuo computer locale che inoltra in modo sicuro alla connessionelocalhost per VNC. È possibile farlo tramite il terminale su Linux o macOS con il seguente comando:

  • ssh -L 5901:127.0.0.1:5901 -C -N -l sammy your_server_ip

Lo switch-L specifica i collegamenti alle porte., In questo caso stiamo legando la porta 5901 della connessione remota alla porta 5901 sul computer locale. Lo switch-C abilita la compressione, mentre lo switch-N dice assh che non vogliamo eseguire un comando remoto. L’opzione-l specifica il nome di accesso remoto.

Ricordarsi di sostituiresammy eyour_server_ip con il nome utente sudo non root e l’indirizzo IP del server.,

Se si utilizza un client SSH grafico, come PuTTY, utilizzareyour_server_ipcome IP di connessione e impostarelocalhost:5901 come nuova porta inoltrata nelle impostazioni del tunnel SSH del programma.

Una volta che il tunnel è in esecuzione, utilizzare un client VNC per connettersi alocalhost:5901. Ti verrà richiesto di autenticare utilizzando la password impostata nel passaggio 1.

Una volta connesso, vedrai il desktop Xfce predefinito., Dovrebbe essere qualcosa come questo:

È possibile accedere ai file nella vostra home directory con il file manager o da riga di comando, come si vede qui:

Premere CTRL+C terminale per interrompere il tunnel SSH e tornare al prompt. Questo disconnetterà anche la tua sessione VNC.

Quindi impostiamo il nostro server VNC come servizio.,

Passo 4 — Esecuzione di VNC come servizio di sistema

Successivamente, configureremo il server VNC come servizio systemd in modo da poterlo avviare, arrestare e riavviare secondo necessità, come qualsiasi altro servizio. Ciò garantirà anche che VNC si avvii al riavvio del server.

Per prima cosa, crea un nuovo file di unità chiamato/etc/systemd/system/[email protected] usando il tuo editor di testo preferito:

Il simbolo@ alla fine del nome ci farà passare un argomento che possiamo usare nella configurazione del servizio., Useremo questo per specificare la porta di visualizzazione VNC che vogliamo utilizzare quando gestiamo il servizio.

Aggiungi le seguenti righe al file. Assicurati di modificare il valore di User, Group, WorkingDirectory e il nome utente nel valore di PIDFILE in modo che corrisponda al tuo nome utente:

/etc/systemd/system / [email protected]

Il comandoExecStartPre interrompe VNC se è già in esecuzione. Il comandoExecStart avvia VNC e imposta la profondità del colore su colore a 24 bit con una risoluzione di 1280×800. È possibile modificare anche queste opzioni di avvio per soddisfare le proprie esigenze.,

Salva e chiudi il file.

Quindi, rendere il sistema consapevole del nuovo file di unità.

  • sudo systemctl daemon-reload

Abilita il file dell’unità.

Il1seguendo il@indica su quale numero di display dovrebbe apparire il servizio, in questo caso il:1 predefinito come discusso nel passaggio 2..

Arrestare l’istanza corrente del server VNC se è ancora in esecuzione.

  • vncserver -kill :1

Quindi avvialo come faresti per avviare qualsiasi altro servizio systemd.,

  • sudo systemctl start vncserver@1

È possibile verificare che sia iniziato con questo comando:

  • sudo systemctl status vncserver@1

Se è stato avviato correttamente, l’output dovrebbe essere simile a questo:

Il server VNC sarà ora disponibile al riavvio della macchina.

Avviare nuovamente il tunnel SSH:

  • ssh -L 5901:127.0.0.1:5901 -C -N -l sammy your_server_ip

Quindi effettuare una nuova connessione utilizzando il software client VNC alocalhost:5901 per connettersi alla macchina.

Conclusione

Ora hai un server VNC sicuro installato e funzionante sul tuo server Ubuntu 18.04., Ora sarete in grado di gestire i file, software e impostazioni con un’interfaccia grafica facile da usare e familiare, e sarete in grado di eseguire software grafico come browser web in remoto.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *