Ricerca nel sito web

Come installare VNC Server su Rocky Linux


Su questa pagina

  1. Prerequisiti
  2. Installazione dell'ambiente desktop
  3. Aggiunta utente VNC
  4. Installazione di TigerVNC Server
  5. Avvio del server VNC
  6. Impostazione di Firewalld
  7. Connettiti al server VNC tramite tunnel SSH sicuro
  8. Conclusioni

Virtual Network Computing (VNC) è un protocollo di condivisione del desktop che consente di controllare un computer in remoto utilizzando il software client VNC. VNC funziona su ambienti GUI (Graphical User Interface), trasmette i movimenti del mouse e l'input della tastiera sulla rete utilizzando il protocollo RFB (Remote Frame Buffer).

Comunemente, VNC viene utilizzato dai tecnici per controllare i desktop dei clienti o utilizzato da qualcuno che deve accedere al proprio desktop in ufficio da casa. VNC può essere utilizzato in modo sicuro attraverso la rete VPN o utilizzando la connessione di tunneling SSH.

In questo tutorial, configurerai il server VNC con TigerVNC su un server Rocky Linux. Imparerai anche come connetterti in modo sicuro al server VNC tramite il tunneling SSH.

Prerequisiti

Per completare questo tutorial, avrai bisogno di un server con i seguenti requisiti:

  • Un nuovo server Rocky Linux: puoi utilizzare Rocky Linux v8.5 o v9.
  • Un utente non root con privilegi di root o amministratore.
  • Un firewalld abilitato sul server.

Installazione dell'ambiente desktop

L'installazione predefinita del server Rocky Linux viene fornita senza GUI. Per configurare VNC Server, dovrai installare l'ambiente desktop sul tuo server Rocky Linux. Per VNC Server, si consiglia di utilizzare l'ambiente desktop leggero, che offre maggiori prestazioni e velocità.

Su Rocky Linux, ci sono più gruppi di pacchetti che forniscono un ambiente desktop. Per questo esempio, installerai e configurerai XFCE come ambiente desktop per il server VNC sul sistema Rocky Linux.

Prima di iniziare l'installazione dei pacchetti, eseguire il seguente comando dnf per aggiornare i pacchetti installati alla versione più recente.

sudo dnf update

Ora aggiungi il repository EPEL al tuo sistema Rocky Linux tramite il comando dnf di seguito. Immettere Y per aggiungere il repository EPEL e premere INVIO.

sudo dnf epel-release

Successivamente, installerai l'ambiente desktop XFCE tramite il pacchetto di gruppo \Xfce\ fornito dal repository Rocky Linux. Inoltre, installerai il pacchetto di gruppo \base-x\ che contiene i pacchetti Xorg.

sudo dnf groupinstall "Xfce" "base-x"

Immettere Y quando viene richiesto di confermare l'installazione e premere INVIO per procedere.

Una volta installati il desktop XFCE e la base-x, abilitare l'ambiente grafico tramite il comando systemctl di seguito. Ciò abiliterà l'ambiente grafico all'avvio del server.

sudo systemctl set-default graphical

Aggiunta utente VNC

Per motivi di sicurezza, si consiglia di utilizzare un utente non root per eseguire il server VNC. Dovresti creare utenti dedicati che eseguiranno il server VNC. Se l'utente ha bisogno dei privilegi sudo, è possibile aggiungere il proprio utente al gruppo \ruota\.

Eseguire il comando seguente per creare un nuovo utente. Quindi, impostare la password per l'utente. In questo esempio, creerai un nuovo utente \jane\ e ti assicurerai di utilizzare una password complessa.

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

Dopo aver creato il nuovo utente, eseguire il seguente comando per aggiungere il nuovo utente al gruppo \ruota\. Ciò consente al nuovo utente di eseguire il comando sudo e ottenere i privilegi di root.

sudo usermod -aG wheel jane

Dopo aver installato XFCE Desktop Environment e aver creato l'utente VNC, avvierai l'installazione e le configurazioni di TigerVNC.

Installazione di TigerVNC Server

Per configurare un server VNC, è necessario installare il software del server VNC. In questo esempio, installerai e utilizzerai \TigerVNC Server\, che è disponibile per impostazione predefinita nel repository Rocky Linux.

Genererai anche le configurazioni del server VNC, imposterai l'ambiente desktop predefinito e aggiungerai l'utente VNC all'elenco degli utenti di TigerVNC Server.

Esegui il comando dnf qui sotto per installare il pacchetto \tigervnc-server\ sul sistema Rocky Linux. Immettere Y quando viene richiesto di confermare l'installazione e premere INVIO per procedere.

sudo dnf install tigervnc-server

Una volta completata l'installazione, configurerai il server VNC per ciascun utente (utenti VNC).

Accedi al tuo utente utilizzando il seguente comando.

su - jane

Ora, esegui il seguente comando per inizializzare il server VNC per l'utente \jane\. Durante l'inizializzazione del server VNC, ti verrà chiesto di creare la password per il tuo server VNC, quindi inserisci la password complessa e ripeti. E per la \password di sola visualizzazione\, inserisci \n\ per disattivare.

vncserver

Questo comando genererà le configurazioni del server VNC che si troveranno in \~/.vnc\. Le configurazioni del server VNC includono lo script xstartup, la configurazione dell'ambiente desktop e i log per il processo VNC.

Inoltre, puoi vedere che il nuovo processo VNC è in esecuzione con un nome come \HOSTNAME:N\ - che significa il nome host del sistema e il desktop/display :N in numero.

Verificare l'elenco dei processi VNC tramite il comando vncserver di seguito. Dovresti vedere il processo VNC del display \:1\ in esecuzione.

vncserver -list

Ora, devi terminare l'attuale processo VNC \:1\ per configurare l'ambiente desktop XFCE. Eseguire il comando vncserver di seguito per arrestare il processo VNC sul display \:1\.

vncserver -kill :1

Una volta terminato il processo VNC, dovresti ricevere un messaggio di output come \Killing Xvnc process ID PID\.

Ora che hai generato le configurazioni del server VNC, apri il file \~/.vnc/config\ utilizzando nano editor.

nano ~/.vnc/config

Modificare la configurazione predefinita come di seguito. In questo esempio, utilizzerai XFCE come ambiente desktop predefinito per il server VNC e, quando l'utente si connette al server VNC, la schermata di visualizzazione predefinita è \1920x1200\. Il server VNC funzionerà solo su localhost e abiliterà i desktop condivisi.

session=xfce
geometry=1920x1200
localhost
alwaysshared

Salva il file ed esci dall'editor quando hai finito.

Successivamente, premi Ctrl+d e torna alla sessione dell'utente root. Quindi, apri il file /etc/tigervnc/vncserver.users utilizzando l'editor nano.

sudo nano /etc/tigervnc/vncserver.users

Aggiungi il numero del display e l'utente VNC come nella seguente configurazione. In questo esempio, verrà utilizzato il display \:1\ per eseguire il server VNC per l'utente \jane\.

:1=jane

Salva il file ed esci dall'editor quando hai finito.

Con le configurazioni del server VNC generate, l'ambiente desktop predefinito configurato e l'utente VNC aggiunto all'elenco degli utenti TigerVNC, ora sei pronto per avviare il server TigerVNC ed eseguirlo come servizio.

Avvio del server VNC

Il server TigerVNC fornisce file di servizio systemd dinamici, il che significa che ogni display o utente ha il suo servizio systemd. In questo esempio, l'utente \jane\ sta eseguendo il server VNC con il display \:1\, quindi il file di servizio sarebbe \[email :1.service.

Ora, ogni volta che aggiungi un nuovo utente VNC, devi ricaricare il systemd manager per applicare le nuove modifiche. Puoi ricaricare il gestore systemd tramite il comando systemctl come di seguito.

sudo systemctl daemon-reload

Successivamente, avvia e abilita \[email :1.service\ per il display \:1\ utilizzando il seguente comando systemctl. Ciò consentirà al display del processo del server VNC \:1\ di essere eseguito automaticamente all'avvio.

sudo systemctl start :1.service

Infine, verifica \[email protetta]:1.service\ per assicurarti che il servizio sia in esecuzione.

sudo systemctl status :1.service

Se \[email :1.service\ è in esecuzione, dovresti vedere un output simile a quello dello screenshot seguente.

A questo punto, hai completato l'installazione e la configurazione del server VNC tramite \Tiger-VNC\ sul server Rocky Linux. Hai anche configurato XFCE come ambiente desktop predefinito per il server VNC. Successivamente, configurerai Firewalld per proteggere il server VNC.

Configurazione di Firewalld

Sul server Rocky Linux predefinito, firewalld è installato e abilitato. Aggiungerai un nuovo servizio \vnc-server\ al file firewalld.

Aggiungi il servizio \vnc-server\ a firewalld tramite il comando firewall-cmd di seguito. Quindi, ricarica le regole firewalld per applicare le nuove modifiche.

sudo firewall-cmd --add-service=vnc-server --permanent
sudo firewall-cmd --reload

Infine, verifica l'elenco delle regole firewalld utilizzando il comando seguente. Se vedi il servizio \vnc-server\ nell'elenco dei servizi, la regola del servizio viene aggiunta e abilitata.

sudo firewall-cmd --list-services

Connettiti al server VNC tramite tunnel SSH sicuro

Per avviare il tunneling SSH, eseguire il seguente comando ssh di seguito. In questo esempio, creerai un nuovo tunneling all'indirizzo IP del server VNC \192.168.5.100\ con l'utente \jane\ al localhost sulla porta TCP \5901\, che è la stessa porta di il server VNC.

ssh -L 5901:127.0.0.1:5901 -N -f -l jane 192.168.5.100

Inserisci la password per il tuo utente. Una volta connesso, puoi connetterti al server VNC tramite localhost con la porta 5901.

Apri il tuo visualizzatore VNC sul tuo computer locale. In questo esempio, useremo \TigerVNC Viewer\.

Sull'indirizzo \VNC Server\, inserisci l'host come localhost o 127.0.0.1 con porta 5901. Quindi, fai clic su \Connetti\ per procedere.

Ora, inserisci la password del server VNC per il tuo utente e fai clic su \OK\.

Se le tue connessioni hanno successo, vedrai il desktop XFCE sullo schermo nella seguente schermata.

Puoi anche aprire il tuo terminale ed eseguire il seguente comando per verificare il tuo utente.

id
whoami
sudo su

Conclusioni

In questa guida, hai installato VNC Server con TigerVNC sul server Rocky Linux. Hai anche installato e configurato XFCE come ambiente desktop predefinito per il tuo server VNC. Infine, hai imparato come connetterti al server VNC in modo sicuro tramite il tunneling SSH.

Un'altra considerazione per il server VNC è che puoi limitare gli indirizzi IP che possono accedere alla porta del server VNC tramite Firewalld. Inoltre, puoi proteggere la tua connessione tramite un server VPN locale.