GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare e configurare VNC su CentOS 7

In questo tutorial, ti guideremo attraverso i passaggi per l'installazione e la configurazione di un server VNC su un sistema CentOS 7. Ti mostreremo anche come connetterti in modo sicuro al server VNC tramite un tunnel SSH.

Virtual Network Computing (VNC) è un sistema grafico di condivisione desktop che consente di utilizzare la tastiera e il mouse per controllare in remoto un altro computer.

Prerequisiti #

Prima di continuare con il tutorial, assicurati di aver effettuato l'accesso come utente con privilegi sudo. Daremo per scontato che tu abbia effettuato l'accesso come utente chiamato linuxize .

Installazione dell'ambiente desktop Xfce #

Le installazioni di server CentOS spesso non vengono fornite con un ambiente desktop installato, quindi inizieremo installando un ambiente desktop leggero.

Installeremo Xfce. È veloce, stabile e con poche risorse di sistema, il che lo rende ideale per l'utilizzo su server remoti.

I pacchetti Xfce sono disponibili nel repository EPEL. Se il repository non è abilitato sul tuo server, puoi abilitarlo digitando:

sudo yum install epel-release

Una volta aggiunto il repository, installa Xfce sul tuo CentOS con:

sudo yum groupinstall xfce

A seconda del tuo sistema, il download e l'installazione dei pacchetti e delle dipendenze di Xfce potrebbero richiedere del tempo.

Installazione del server VNC #

Useremo TigerVNC come nostro server VNC preferito. TigerVNC è un server VNC open source ad alte prestazioni gestito attivamente.

Digita il seguente comando per installare TigerVNC sul tuo server CentOS:

sudo yum install tigervnc-server

Ora che il server VNC è installato, il passaggio successivo è eseguire il vncserver comando, che creerà la configurazione iniziale e imposterà la password. Non utilizzare sudo durante l'esecuzione del comando seguente:

vncserver

Ti verrà chiesto di inserire e confermare la password e se impostarla come password di sola visualizzazione. Se scegli di impostare una password di sola visualizzazione, l'utente non sarà in grado di interagire con l'istanza VNC con il mouse e la tastiera.

You will require a password to access your desktops.

Password:
Verify:
Would you like to enter a view-only password (y/n)? n
/usr/bin/xauth:  file /home/linuxize/.Xauthority does not exist

New 'server2.linuxize.com:1 (linuxize)' desktop at :1 on machine server2.linuxize.com

Starting applications specified in /etc/X11/Xvnc-session
Log file is /home/linuxize/.vnc/server2.linuxize.com:1.log

La prima volta il vncserver viene eseguito, creerà e memorizzerà il file della password nel ~/.vnc directory che verrà creata se non presente.

Nota il :1 dopo il nome host nell'output sopra. Indica il numero della porta di visualizzazione su cui è in esecuzione il server vnc. Nel nostro caso, il server è in esecuzione sulla porta TCP 5901 (5900+1). Se crei una seconda istanza con vncserver verrà eseguito sulla prossima porta libera, ad esempio :2 , il che significa che il server è in esecuzione sulla porta 5902 (5900+2).

Ciò che è importante ricordare è che quando si lavora con i server VNC, :X è una porta display che fa riferimento a 5900+X .

Prima di continuare con il passaggio successivo, arresta l'istanza VNC utilizzando vncserver comando con un -kill opzione e il numero del server come argomento. In questo caso, il server è in esecuzione nella porta 5901 (:1 ), quindi lo fermeremo con:

vncserver -kill :1
Killing Xvnc process ID 2432

Configurazione del server VNC #

Ora che sia Xfce che TigerVNC sono installati sul server, il passaggio successivo consiste nel configurare TigerVNC per utilizzare Xfce. Per farlo, apri il seguente file:

nano ~/.vnc/xstartup

E cambia l'ultima riga da exec /etc/X11/xinit/xinitrc a exec startxfce4 :

~/.vnc/xstartup
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4 

Salva e chiudi il file. Lo script sopra verrà eseguito automaticamente ogni volta che avvii o riavvii il server TigerVNC.

Se devi passare opzioni aggiuntive al server VNC, apri il ~/.vnc/config file e aggiungi un'opzione per riga. Le opzioni più comuni sono elencate nel file. Decommenta e modifica a tuo piacimento.

Ecco un esempio:

~/.vnc/config
# securitytypes=vncauth,tlsvnc
# desktop=sandbox
geometry=1920x1080
# localhost
# alwaysshared
dpi=96

Creazione di un file di unità Systemd #

Creeremo un file di unità di sistema che ci consentirà di avviare, arrestare e riavviare facilmente il servizio VNC secondo necessità, come qualsiasi altro servizio di sistema.

Copia il file dell'unità vncserver con il cp comando:

sudo cp /usr/lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service

Apri il file con il tuo editor di testo, modifica le righe evidenziate in giallo e sostituisci "linuxize" con il tuo nome utente effettivo:

sudo nano /etc/systemd/system/vncserver@\:1.service
/etc/systemd/system/vncserver@:1.service
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
User=linuxize
Group=linuxize

# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver %I
PIDFile=/home/linuxize/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

[Install]
WantedBy=multi-user.target

Salva e chiudi il file. Notifica a systemd che abbiamo creato un nuovo file di unità con:

sudo systemctl daemon-reload

Il passaggio successivo consiste nell'abilitare il file unit con il seguente comando:

sudo systemctl enable vncserver@:1.service

Il numero 1 dopo il @ sign definisce la porta di visualizzazione su cui verrà eseguito il servizio VNC. In questo esempio, questo è il valore predefinito 1 e il server VNC ascolterà sulla porta 5901 , come abbiamo discusso nella sezione precedente.

Avvia il servizio VNC eseguendo:

sudo systemctl start vncserver@:1.service

Verifica che il servizio sia stato avviato correttamente con:

sudo systemctl status vncserver@:1.service
● vncserver@:1.service - Remote desktop service (VNC)
   Loaded: loaded (/etc/systemd/system/vncserver@:1.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2020-04-06 19:27:47 UTC; 16s ago
  Process: 909 ExecStart=/usr/bin/vncserver %I (code=exited, status=0/SUCCESS)
  Process: 891 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
 Main PID: 923 (Xvnc)
 ...

Connessione al server VNC #

VNC non è un protocollo crittografato e può essere soggetto a packet sniffing. L'approccio consigliato è creare un tunnel SSH che inoltri in modo sicuro il traffico dal tuo computer locale sulla porta 5901 al server sulla stessa porta.

Configura il tunneling SSH su Linux e macOS #

Se esegui Linux, macOS o qualsiasi altro sistema operativo basato su Unix sulla tua macchina, puoi facilmente creare un tunnel con il seguente ssh comando:

ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address

Ti verrà chiesto di inserire la password utente.

Non dimenticare di sostituire username e server_ip_address con il tuo nome utente e l'indirizzo IP del tuo server.

Configura il tunneling SSH su Windows #

Se esegui Windows, puoi configurare il tunneling SSH utilizzando il client SSH PuTTY.

Apri Putty e inserisci l'indirizzo IP del tuo server nel Host name or IP address campo.

Sotto il Connection menu, espandi SSH e seleziona Tunnels . Immettere la porta del server VNC (5901 ) nel Source Port campo e inserisci server_ip_address:5901 nella Destination campo e fare clic su Add pulsante come mostrato nell'immagine qui sotto:

Torna alla Session pagina per salvare le impostazioni in modo da non doverle inserire ogni volta.

Per accedere al server remoto, seleziona la sessione salvata e fai clic su Open pulsante

Connessione tramite Vncviewer #

Ora che hai impostato il tunneling SSH, è il momento di aprire il tuo Vncviewer e di connetterti al server VNC su localhost:5901 .

Puoi utilizzare qualsiasi visualizzatore VNC come TigerVNC, TightVNC, RealVNC, UltraVNC, Vinagre e VNC Viewer per Google Chrome.

In questo esempio, useremo TigerVNC. Apri il tuo visualizzatore VNC, inserisci localhost:5901 e fai clic su Connect pulsante.

Inserisci la tua password quando richiesto e dovresti vedere il desktop Xfce predefinito. Dovrebbe assomigliare a questo:

Ora puoi iniziare a interagire con il desktop XFCE remoto dal tuo computer locale usando la tastiera e il mouse.


Cent OS
  1. Come installare e configurare VNC su Ubuntu 20.04

  2. Come installare e configurare VNC su Ubuntu 18.04

  3. Come installare e configurare un server NFS su CentOS 8

  4. Come installare e configurare VNC su CentOS 8

  5. Come installare e configurare Gitlab su CentOS 8

Come installare il server VNC su CentOS 7

Come installare il server VNC su CentOS 6

Come installare il server VNC su CentOS 8

Come installare e configurare Sandstorm Server su CentOS 8

Come installare e configurare il server VNC (TigerVNC) in CentOS / RHEL 7

Come installare e configurare il server VNC su CentOS/RHEL 8