La connessione remota ai computer è vecchia quanto le reti di computer. L'accesso all'interfaccia grafica (GUI) è un modo conveniente per lavorare su un desktop remoto. Possiamo lasciare i nostri programmi grafici in esecuzione e funzionanti e non abbiamo bisogno di tenere aperta la sessione:ci ricolleghiamo semplicemente quando lo sentiamo.
Il server VNC è un noto server di sessione grafico che consente connessioni remote che possiamo eseguire con un utente non privilegiato. In questo modo molti utenti possono accedere in remoto al proprio desktop sulla stessa macchina e non si bloccheranno a vicenda (a parte forse l'esaurimento delle risorse della macchina di rimozione).
In questo tutorial imparerai:
- Come installare i pacchetti richiesti.
- Come configurare e avviare il server VNC su RHEL 8.
- Come connettersi a una sessione grafica da remoto.
- Come eseguire programmi grafici nella sessione di xterm.

Requisiti e convenzioni software utilizzati
Categoria | Requisiti, convenzioni o versione del software utilizzata |
---|---|
Sistema | Red Hat Enterprise Linux 8 |
Software | Server Tigervnc 1.9 |
Altro | Accesso privilegiato al tuo sistema Linux come root o tramite sudo comando. |
Convenzioni | # – richiede che i comandi linux dati vengano eseguiti con i privilegi di root direttamente come utente root o usando sudo comando$ – richiede che i comandi linux dati vengano eseguiti come un normale utente non privilegiato |
Come installare il server vnc su RHEL 8 istruzioni dettagliate
Ci sono molti gestori di finestre che possiamo usare con il server VNC, ma ai fini di questo tutorial imposteremo una semplice sessione xterm, come xterm
è nei repository di base di Red Hat Enterprise Linux 8. Mostreremo tuttavia che questo semplice punto di partenza fornisce funzionalità complete con un semplice trucco. Nota anche che ci sono gestori di finestre molto più sofisticati là fuori, come xfce
, ma non rientra nell'ambito di questo tutorial.
- Per prima cosa dobbiamo installare i pacchetti richiesti per l'applicazione server:
dnf install tigervnc-server xterm
- Successivamente dobbiamo aprire il firewall per il servizio. Per verificare quali servizi sono attualmente consentiti, elenchiamo i servizi abilitati:
# firewall-cmd --list-services cockpit dhcpv6-client ssh
Apri il
vnc-server
servizio:# firewall-cmd --permanent --zone=public --add-service vnc-server success
Applicare la modifica alla configurazione:
# firewall-cmd --reload
E elenca di nuovo i servizi per verificare:
# firewall-cmd --list-services cockpit dhcpv6-client ssh vnc-server
AVVISO
Non aprire al pubblico il servizio VNC del tuo computer! La regola del firewall sopra viene eseguita in un ambiente confinato ed è solo a scopo dimostrativo. Assicurati di comprendere i rischi prima di aprire qualsiasi cosa su un server con connessione a Internet o persino su un desktop. - Dobbiamo configurare l'ambiente in cui verrà eseguito il server. In questo esempio il nostro obiettivo è eseguire il server con un utente specificato
testuser
chi non haroot
privilegi. Nota che questo passaggio viene eseguito con l'utente che eseguirà il server, non conroot
. Abbiamo impostato una password che consentirà la connessione (che non ha nulla a che fare con la password dell'utente utilizzata conssh
):$ vncpasswd Password: Verify: Would you like to enter a view-only password (y/n)? n
Non è necessario disporre di accessi di sola visualizzazione in questo esempio. Quindi modifichiamo il
/home/testuser/.vnc/xstartup
file di testo con un editor di testo comenano
. Il file dovrebbe essere vuoto dopo l'installazione e aggiungeremo solo un contenuto minimo per avviarexterm
sessione in connessione. Aggiungiamo la seguente riga al file vuoto:xterm -geometry 1044x810+10+10 &
Regola i parametri della geometria per adattarli allo schermo. Ora possiamo avviare il server:
$ vncserver New 'rhel8beta.lab:1 (testuser)' desktop is rhel8beta.home.hu:1 Starting applications specified in /home/testuser/.vnc/xstartup Log file is /home/testuser/.vnc/rhel8beta.lab:1.log
Come suggerisce l'output, possiamo seguire i log forniti dal server nei file di log in
/home/<username>/.vnc/<hostname>:1.log
, questo nome file cambierà se sono in esecuzione più di un server VNC (così come la porta che devi connettere). Il file di registro dice anche su quale porta è in ascolto il server:vncext: Listening for VNC connections on all interface(s), port 5901
Qual è la porta VNC predefinita.
- Possiamo utilizzare molti client VNC per connetterci al server ora avviato.
Remmina
è un client fornito con desktop Gnome recenti per impostazione predefinita e può gestire sessioni SSH, RDP e VNC. È necessario fornire il nome host o l'indirizzo IP dell'host che esegue il server VNC, nonché la porta. L'esempio seguente utilizza192.168.1.14
come indirizzo e la porta predefinita5901
abbiamo trovato nel file di registro del server nel passaggio precedente. Dobbiamo selezionare "VNC" come protocollo accanto al campo dell'indirizzo e digitare la password che abbiamo specificato convncpasswd
prima.Connessione a tigervnc con Remmina.
Se tutto funziona come previsto, siamo connessi al server VNC e stiamo eseguendo
xterm
, accettando e fornendo contenuto negli appunti, protetto da guasti di rete. Latop
l'esempio seguente verrà eseguito ininterrottamente se ci disconnettiamo dalla sessione e ci riconnettiamo in seguito.In esecuzione senza interruzioni da remoto.
- Sebbene questi passaggi mostrino sostanzialmente come configurare il server VNC e connettersi ad esso, non ha molto senso eseguire
top
su unxterm
remoto session, poiché potremmo farlo con molto meno sforzo con ssh e un server di sessione comescreen
. Per vedere la potenza di una configurazione di xterm così semplice, digita semplicementegedit
sulla console xterm remota (supponendo che sia installato un desktop Gnome).
Esecuzione di programmi grafici all'interno di xterm.
Un documento vuoto viene visualizzato in gedit, proprio come farebbe qualsiasi programma grafico avviato dalla riga di comando. Si noti che il documento che viene modificato in remoto e il programma che lo tiene aperto è protetto anche dalla sessione VNC. Un'interruzione della rete non lo influirà, possiamo semplicemente riconnetterci e continuare a lavorare sul testo, anche se il nostro computer client riscontra un errore irreversibile e ci siamo dimenticati di salvare il nostro lavoro nelle ultime ore. Naturalmente il server VNC non proteggerà dal guasto della macchina su cui è in esecuzione.