Come faccio a far funzionare X11 Forwarding su Windows con PuTTY e Xming?


16

Ho sempre desiderato che X11 Forwarding funzionasse con PuTTY e il sistema X Window che sto usando è Xming. Quando ho Xming in esecuzione e stabilisco una nuova connessione al mio server, ricevo quanto segue dopo un comando:

$ firefox
PuTTY X11 proxy: wrong authentication protocol attemptedPuTTY X11 proxy: wrong authentication protocol attemptedError: cannot open display: localhost:10.168

$ google-chrome
PuTTY X11 proxy: wrong authentication protocol attempted
(google-chrome:7083): Gtk-WARNING **: cannot open display: localhost:10.168

$ gedit
PuTTY X11 proxy: wrong authentication protocol attempted
** (gedit:6990): WARNING **: Could not open X display
PuTTY X11 proxy: wrong authentication protocol attemptedCannot open display:
Run 'gedit --help' to see a full list of available command line options.

$ gnome-system-monitor
PuTTY X11 proxy: wrong authentication protocol attempted
** (gnome-system-monitor:7024): WARNING **: Could not open X display
PuTTY X11 proxy: wrong authentication protocol attempted
(gnome-system-monitor:7024): Gtk-WARNING **: cannot open display: localhost:10.168

Come posso correggere questi errori e far funzionare l'X11 Forwarding nel suo insieme?


Come risolvere questo?
user568109

Dovresti creare un account, fare una nuova domanda e quindi collegarlo qui in modo che io possa vederlo.
NobleUplift,

Risposte:


9

Copiato da: http://www.math.umn.edu/systems_guide/putty_xwin32.html

Configurare Putty

  • Aggiungi il nome host Unix
  • Passa il protocollo a SSH
  • Digitare il nome della sessione nelle sessioni salvate
  • Fai clic su "Salva"

<img src = 'putty_xwin32 / default_putty_rev-sm.png' />

  • Espandi la scheda "SSH" dall'elenco "Categoria"
  • Scegli "X11" dall'elenco "SSH"
  • Seleziona "Abilita inoltro X11"

<img src = 'putty_xwin32 / xfwd_putty_rev-sm.png' />

  • Scegli "Sessione" dall'elenco "Categoria"
  • Fai clic su "Salva"

Avvio di X Server su Windows

Configurare Xming

Basta eseguire "Tutti i programmi> Xming Xming" e dovrebbe funzionare se hai configurato PuTTY.

Collegamento

  • Inizia Xming
  • Inizia Putty
  • Fare doppio clic sulla sessione salvata desiderata

<img src = 'putty_xwin32 / session_putty_rev-sm.png' />

  • Inserisci nome utente e password come richiesto
  • Ora dovresti essere in grado di eseguire le applicazioni X dall'host sul desktop locale

EDIT: per correggere l' wrong authentication protocol attemptederrore, provare ad abilitare "ForwardX11Trusted yes" nel file / etc / ssh / sshd_config e quindi riavviare il server OpenSSH.


Ho letteralmente letto la stessa identica guida (è come ho scoperto Xming), ma l'ho trovata completamente inutile altrimenti perché mi diceva cose che già sapevo o che avrei potuto capire semplicemente eseguendo i due programmi.
NobleUplift

Sono stato in grado di far funzionare l'inoltro X11, ma suppongo che questa risposta sia il limite su cosa puoi fare per esso. Non so perché la mia domanda abbia preso un -1 però ...
NobleUplift,

Come risolve il problema. È solo un tutorial per configurare x over ssh.
user568109

@ user568109 Se si seguono queste indicazioni e si tenta di chiamare qualsiasi programma basato sulla GUI, verrà visualizzato localmente.
Kruug,

7
ForwardX11Trustednoi un'impostazione lato client. Mettendo questo in sshd_confignon avrà alcun effetto e impedirà al server SSH di avviarsi nel peggiore dei casi. -1. Questo è sshd_configcontro ssh_configse stai cercando manpagine.
0xC0000022L

16

Ho avuto 2 problemi e ho scoperto che questa domanda aveva i problemi più vicini ai miei, quindi ho pensato che la mia soluzione sarebbe stata utile per gli altri che sono venuti qui, cercando di risolvere lo stesso problema. Il mio sistema ha Cygwin / X (xinit 1.3.4-5) e PuTTY (0.64). Sono riuscito ad arrivare fino in fondo impostando entrambi --listen tcp sullo startxbin locale e passando il percorso a .Xauthority to putty.

In primo luogo, in riferimento all'errore "PuTTY X11 proxy: impossibile connettersi al server X inoltrato: errore di rete: connessione rifiutata", è necessario fare in modo che la sessione X ascolti le connessioni: aprire un terminale cygwin e modificare / usr / bin / startxwin trova la linea ...

defaultserverargs="-multiwindow"

e cambiarlo in ...

defaultserverargs="-multiwindow -listen tcp"

In secondo luogo, in risposta all'errore "Autorizzazione richiesta, ma non è stato specificato alcun protocollo di autorizzazione", è necessario fare in modo che putty utilizzi i token xauth corretti (qualcosa di strano sembra accadere all'interno di putty in modo che a xauth listlivello locale non fornisca token che la connessione inoltrata può utilizzare passandoli dentro xauth add <token>, sembra che debbano essere impostati da PuTTY sulla connessione, affinché funzionino).
Trova il percorso, nel dominio Windows, in cui è in esecuzione il tuo file ~ / .Xauthority (di nuovo nel terminale cygwin)

cd ~
explorer .

Controlla le proprietà sul file .Xauthority e prendi nota della posizione (selezionalo e premi CTRL + C per inserirlo negli appunti).

Avviare PuTTY come nell'esempio sopra (copiato da http://www.math.umn.edu/systems_guide/putty_xwin32.html )

Nella pagina "Opzioni per il controllo dell'inoltro SSH X11", è necessario selezionare "Abilita inoltro X11" e "MIT-Magic-Cookie-1" impostato come protocollo.
Nel campo "File con autorizzazione X per la visualizzazione locale", fai clic su Sfoglia e usa la posizione nel file .Xauthority che hai annotato in precedenza, trova il file .Xauthority. Fai clic su Apri per popolare il campo, quindi torna a Sessione (nella configurazione PuTTY) e salva la sessione. Quindi puoi fare clic su Apri.

Ora dovrebbe consentire la connessione.


3
Avevo anche bisogno di impostare il X authority file for local displaypuntare alla mia .Xauthoritycartella nella mia cygwinhome directory. Grazie!
Heatfan John,

0

Puoi

xauth list

poi

xauth add <your display>

2
La riga di comando è xauth add dpyname protoname hexkey.
NobleUplift

stranamente, ciò non ha funzionato sulle mie connessioni di stucco inoltrate.
Sibaz,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.