GNU/Linux >> Linux Esercitazione >  >> Linux

Come configurare l'inoltro X11 utilizzando SSH in Linux

Oggi impareremo una caratteristica meno conosciuta, interessante e utile su Linux. Sono sicuro che molti di voi conoscono SSH. Possiamo accedere ai sistemi Linux remoti in modo sicuro tramite SSH. Ma sapevi che è possibile inoltrare X su SSH per eseguire applicazioni grafiche in remoto? Sì! Questo meccanismo è noto come inoltro X11 . In questa guida, configureremo l'inoltro X11 utilizzando SSH in Linux.

Cos'è l'inoltro X11?

L'inoltro X11 è un metodo per consentire a un utente di avviare un'applicazione grafica installata su un sistema Linux remoto e di inoltrare la finestra dell'applicazione (schermo) al sistema locale. Il sistema remoto non deve disporre di un server X o di un ambiente desktop grafico. Pertanto, la configurazione dell'inoltro X11 tramite SSH consente agli utenti di eseguire in modo sicuro le applicazioni grafiche su una sessione SSH.

Per dirla in parole povere,

  • Ci colleghiamo a un sistema remoto tramite SSH,
  • E poi lanciamo un'applicazione GUI (installata nel sistema remoto) da quella sessione SSH,
  • Ora, l'applicazione GUI viene eseguita sul sistema remoto, ma la finestra dell'applicazione viene visualizzata sul nostro sistema locale. Quindi possiamo usare questo programma GUI remoto sul tuo sistema locale come usiamo un programma installato localmente.

Chiaro? Ora andiamo avanti e vediamo come eseguire applicazioni GUI remote su una sessione SSH.

Configura l'inoltro X11 utilizzando SSH in Linux

Ai fini di questa guida, utilizzerò i seguenti due sistemi:

  • Server remoto:server minimo CentOS 8 (senza GUI).
  • Sistema locale - Ubuntu 20.04 LTS con Gnome DE.

Configurare l'inoltro X11 è banale.

Assicurati di aver installato "xauth" sul tuo sistema server remoto. Se non è installato, esegui il seguente comando come utente root o sudo:

# dnf install xorg-x11-xauth

Vai al tuo sistema remoto (nel mio caso è CentOS 8) e modifica "/etc/ssh/ssh_config" file utilizzando il tuo editor preferito:

# nano /etc/ssh/ssh_config

Aggiungi/modifica la riga seguente:

[...]
X11Forwarding yes

Configura l'inoltro X11 utilizzando SSH in Linux

Premi Ctrl+O per salvare e Ctrl+X per chiudere il file. Riavvia il servizio sshd per effettuare le modifiche:

# systemctl restart sshd

Fatto! Abbiamo configurato l'inoltro X11.

Ora vai al tuo sistema client (nel mio caso è Ubuntu 20.04) e accedi al server remoto tramite SSH usando il comando:

$ ssh -X [email protected]

Qui, -X l'opzione viene utilizzata per abilitare l'inoltro X11 su SSH. Sostituisci "[email protetta]" con il nome utente e l'indirizzo IP del tuo server remoto.

Vedrai per la prima volta il seguente messaggio di avviso.

/usr/bin/xauth: file /root/.Xauthority does not exist

Tuttavia, il .Xauthority il file dovrebbe essere generato automaticamente durante il primo accesso, quindi gli accessi successivi dovrebbero andare bene.

Quindi, avvia qualsiasi applicazione GUI da questa sessione SSH. Ho già installato l'editor di testo grafico Gedit nel mio server CentOS 8, quindi lo avvierò usando il comando:

# gedit

La schermata della finestra della GUI di gedit apparirà ora nel tuo sistema locale.

Esegui applicazioni grafiche remote su una sessione SSH in Linux

Puoi interagire con l'applicazione Gedit installata sul server remoto utilizzando il display, il mouse e la tastiera del tuo sistema locale.

Anche se il mio server CentOS 8 non ha un desktop GUI, posso essere in grado di aprire l'editor grafico Gedit e usarlo dal mio sistema Ubuntu locale. Ecco la demo visiva:

Configura l'inoltro X11 in Putty

Se usi Mastice client per accedere a sistemi remoti, inserisci l'IP o il nome host del tuo sistema remoto nella scheda Sessione:

Connettiti al sistema remoto usando Putty

Quindi, vai a Connessione -> SSH -> X11 e abilita l'opzione di inoltro X11. Fare clic su Apri per stabilire una nuova sessione di mastice:

Configura l'inoltro X11 in Putty

Immettere il nome utente e la password del server remoto. Dopo esserti connesso al sistema remoto tramite Putty, avvia qualsiasi applicazione X installata nel server remoto.

Esegui applicazioni grafiche sulla sessione Putty

Inizia a interagire con l'applicazione GUI remota dal tuo sistema locale!


Linux
  1. Come configurare connessioni SSH personalizzate per semplificare l'accesso remoto

  2. Come configurare le chiavi SSH usando cPanel

  3. Come configurare l'autenticazione basata su chiave SSH in Linux

  4. Come abilitare l'inoltro IP su Linux

  5. Come faccio a sapere se una macchina remota utilizza Windows o Linux?

Come configurare il port forwarding dinamico SSH su Linux

Come eseguire un backup Linux remoto utilizzando SSH

Come montare un filesystem Linux remoto usando SSHFS

Utilizzo di SSH Port Forwarding come strumento di sicurezza in Linux

Come creare una macchina virtuale remota utilizzando il driver SSH generico della macchina mobile

Come installare, configurare e abilitare il servizio SSH in Linux