Wie kann ich X11 Forwarding unter Windows mit PuTTY und Xming zum Laufen bringen?

16

Ich wollte schon immer, dass X11 Forwarding mit PuTTY funktioniert, und das X Window-System, das ich verwende, ist Xming. Wenn Xming ausgeführt wird und ich eine neue Verbindung zu meinem Server herstelle, erhalte ich nach einem Befehl Folgendes:

$ 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

Wie behebe ich diese Fehler und lasse X11 Forwarding als Ganzes funktionieren?

NobleUplift
quelle
Wie kann man das beheben?
user568109
Sie sollten ein Konto erstellen, eine neue Frage stellen und diese dann hier verlinken, damit ich sie sehen kann.
NobleUplift

Antworten:

9

Kopiert von: http://www.math.umn.edu/systems_guide/putty_xwin32.html

Putty konfigurieren

  • Fügen Sie den Unix-Hostnamen hinzu
  • Schalten Sie das Protokoll auf SSH um
  • Geben Sie den Namen der Sitzung in die gespeicherten Sitzungen ein
  • Klicken Sie auf "Speichern".

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

  • Erweitern Sie die Registerkarte "SSH" in der Liste "Kategorie"
  • Wählen Sie 'X11' aus der 'SSH'-Liste
  • Aktivieren Sie "X11-Weiterleitung aktivieren".

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

  • Wählen Sie "Sitzung" aus der Liste "Kategorie"
  • Klicken Sie auf "Speichern".

Starten des X-Servers unter Windows

Xming konfigurieren

Führen Sie einfach "Alle Programme> Xming Xming" aus und es sollte funktionieren, wenn Sie PuTTY konfiguriert haben.

Anschließen

  • Starten Sie Xming
  • Starten Sie Putty
  • Doppelklicken Sie auf die gespeicherte Sitzung, die Sie möchten

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

  • Geben Sie Ihren Benutzernamen und Ihr Passwort wie gewünscht ein
  • Sie sollten nun in der Lage sein, X-Anwendungen vom Host auf Ihrem lokalen Desktop auszuführen

BEARBEITEN: Um den wrong authentication protocol attemptedFehler zu beheben , aktivieren Sie "ForwardX11Trusted yes" in der Datei / etc / ssh / sshd_config und starten Sie den OpenSSH-Server neu.

Kruug
quelle
Ich habe buchstäblich genau dasselbe Handbuch gelesen (so habe ich von Xming erfahren), fand es aber ansonsten völlig nutzlos, weil es mir entweder Dinge erzählte, die ich bereits wusste oder die ich nur durch Ausführen der beiden Programme herausfinden konnte.
NobleUplift
Ich konnte die X11-Weiterleitung irgendwie zum Laufen bringen, aber ich nehme an, diese Antwort ist die Grenze, was Sie dafür tun können. Ich weiß nicht, warum meine Frage eine -1 nahm, obwohl ...
NobleUplift
Wie löst es das Problem? Es ist nur ein Tutorial, um x über ssh zu konfigurieren.
user568109
@ user568109 Wenn Sie diesen Anweisungen folgen und dann versuchen, ein GUI-basiertes Programm aufzurufen, wird es lokal angezeigt.
Kruug
7
ForwardX11Trusteduns eine clientseitige Einstellung. Wenn Sie dies aktivieren, hat dies sshd_configbestenfalls keine Auswirkung und verhindert, dass der SSH-Server im schlimmsten Fall gestartet wird. -1. Dies ist im sshd_configGegensatz zu, ssh_configwenn Sie nach manSeiten suchen .
0xC0000022L
16

Ich hatte zwei Probleme und stellte fest, dass diese Frage meinen am nächsten kommt. Daher dachte ich, meine Lösung wäre hilfreich für andere, die hierher kommen und versuchen, dasselbe Problem wie ich zu beheben. Mein System hat Cygwin / X (xinit 1.3.4-5) und PuTTY (0.64). Ich habe es geschafft, dem auf den Grund zu gehen, indem ich sowohl --listen tcp auf dem lokalen startxbin gesetzt als auch den Pfad zu .Xauthority to putty übergeben habe.

Zunächst müssen Sie in Bezug auf den Fehler "PuTTY X11-Proxy: Verbindung zum weitergeleiteten X-Server nicht möglich: Netzwerkfehler: Verbindung abgelehnt" veranlassen, dass die X-Sitzung auf Verbindungen wartet: Öffnen Sie ein Cygwin-Terminal und bearbeiten Sie / usr / bin / startxwin Finde die Linie ...

defaultserverargs="-multiwindow"

und ändere es auf ...

defaultserverargs="-multiwindow -listen tcp"

Zweitens müssen Sie Putty als Reaktion auf den Fehler "Autorisierung erforderlich, aber kein Autorisierungsprotokoll angegeben" veranlassen, die richtigen xauth-Token zu verwenden (in Putty scheint etwas Seltsames vor sich zu gehen, sodass xauth listlokal keine Token ausgegeben werden , die die weitergeleitete Verbindung verwenden kann Wenn sie weitergegeben werden xauth add <token>, müssen sie anscheinend bei der Verbindung von PuTTY festgelegt werden, damit sie funktionieren.
Suchen Sie den Pfad in der Windows-Domäne, in dem sich Ihre ~ / .Xauthority-Datei befindet, indem Sie sie ausführen (erneut im Cygwin-Terminal).

cd ~
explorer .

Überprüfen Sie die Eigenschaften in der .Xauthority-Datei und notieren Sie den Speicherort (wählen Sie ihn aus und drücken Sie STRG + C, um ihn in die Zwischenablage zu kopieren).

Starten Sie PuTTY wie im obigen Beispiel (kopiert von http://www.math.umn.edu/systems_guide/putty_xwin32.html )

Auf der Seite "Optionen zur Steuerung der SSH X11-Weiterleitung" sollte die Option "X11-Weiterleitung aktivieren" aktiviert und "MIT-Magic-Cookie-1" als Protokoll festgelegt sein.
Klicken Sie im Feld "X-Berechtigungsdatei für lokale Anzeige" auf Durchsuchen und suchen Sie unter Verwendung des Speicherorts nach der zuvor notierten X-Berechtigungsdatei die X-Berechtigungsdatei. Klicken Sie auf Öffnen, um das Feld auszufüllen. Kehren Sie dann zu Sitzung (in der PuTTY-Konfiguration) zurück und speichern Sie die Sitzung. Dann können Sie auf Öffnen klicken.

Jetzt sollten Sie eine Verbindung herstellen können.

sibaz
quelle
3
Ich musste auch den To- X authority file for local displayPoint auf meinen .XauthorityOrdner in meinem cygwinHome-Verzeichnis setzen. Vielen Dank!
HeatfanJohn
0

Du kannst

xauth list

dann

xauth add <your display>

quelle
2
Befehlszeile ist xauth add dpyname protoname hexkey.
NobleUplift
Seltsamerweise funktionierte das bei meinen weitergeleiteten Kittverbindungen nicht.
Sibaz