X11-Weiterleitung unterbrochen


8

Ich kann nicht für mein Leben x11forwarding zur Arbeit bringen. Ich habe alles 'nach dem Buch' gemacht ... Sowohl auf dem Client als auch auf dem Server läuft Ubuntu 11.04. Beide haben offene ssh-, vnc-, x11- und FW-Ports

/etc/ssh/ssh_config

   ForwardAgent yes
   ForwardX11 yes
   ForwardX11Trusted yes

/etc/ssh/sshd_config

X11Forwarding yes
X11DisplayOffset 10

apt-get install xauth
xauth is already the newest version.
  • Tightvncserver installiert
  • lief xauth Liste
  • neu gestartet
  • verbunden mit ssh server -Xvl user

echo $DISPLAY return blank xterm gibt zurück xterm Xt error: Can't open display:

xterm:  DISPLAY is not set
  • FW ist offen
  • VNCserver läuft
  • sshd läuft
  • X11 läuft
  • SSH-Konfigurationsdateien ok
  • Die ausführliche Ausgabe des SSH-Logins zeigt alles in Ordnung, keine Fehler

Immer noch funktioniert nichts ...

Also habe ich export DISPLAY=localhost:10.0 Dann echo $DISPLAYkehrt localhost:10.0aber xtermzurückxterm Xt error: Can't open display: localhost:10.0

Hier ist der seltsame Teil. Wenn ich das tue, export DISPLAY=:0.0gibt xterm keinen Fehler aus, aber es wird keine GUI angezeigt ...

Versuchte alles außer der Neuinstallation des Betriebssystems. Sogar ssh neu installiert und neue Konfigurationsdateien von einer funktionierenden Installation kopiert ...

Setzen Sie hier die ausführliche Ausgabe:

user@jupiter:~$ ssh -v -X user@192.168.0.1 env
OpenSSH_5.8p1 Debian-1ubuntu3, OpenSSL 0.9.8o 01 Jun 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to 192.168.0.1 [192.168.0.1] port 22.
debug1: Connection established.
debug1: identity file /home/user/.ssh/id_rsa type -1
debug1: identity file /home/user/.ssh/id_rsa-cert type -1
debug1: identity file /home/user/.ssh/id_dsa type -1
debug1: identity file /home/user/.ssh/id_dsa-cert type -1
debug1: identity file /home/user/.ssh/id_ecdsa type -1
debug1: identity file /home/user/.ssh/id_ecdsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.8p1 Debian-1ubuntu3
debug1: match: OpenSSH_5.8p1 Debian-1ubuntu3 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.8p1 Debian-1ubuntu3
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ECDSA 31:52:3e:91:b2:b2:74:cf:3e:65:37:a7:78:b9:3a:9e
debug1: Host '192.168.0.1' is known and matches the ECDSA host key.
debug1: Found key in /home/user/.ssh/known_hosts:4
debug1: ssh_ecdsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Trying private key: /home/user/.ssh/id_rsa
debug1: Trying private key: /home/user/.ssh/id_dsa
debug1: Trying private key: /home/user/.ssh/id_ecdsa
debug1: Next authentication method: password
debug1: Authentication succeeded (password).
Authenticated to 192.168.0.1 ([192.168.0.1]:22).
debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: Requesting X11 forwarding with authentication spoofing.
debug1: Requesting authentication agent forwarding.
debug1: Sending environment.
debug1: Sending env LANG = en_US.UTF-8
debug1: Sending command: env
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug1: client_input_channel_req: channel 0 rtype eow@openssh.com reply 0
SHELL=/bin/bash
XDG_SESSION_COOKIE=5867400390852a975845598400000005-1329602079.30299-1173119600
SSH_CLIENT=192.168.0.14 34691 22
USER=user
SSH_AUTH_SOCK=/tmp/ssh-bPyNW11158/agent.11158
MAIL=/var/mail/user
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
PWD=/home/user
LANG=en_US.UTF-8
SHLVL=1
HOME=/home/user
LOGNAME=user
SSH_CONNECTION=192.168.0.14 34691 192.168.0.1 22
_=/usr/bin/env
debug1: channel 0: free: client-session, nchannels 1
Transferred: sent 1960, received 1968 bytes, in 0.1 seconds
Bytes per second: sent 19601.4, received 19681.4
debug1: Exit status 0

Oh ja, und ich bekomme keine Einträge im Syslog oder Kernel Log
JaR

Hallo Schnelle Frage an dich Kumpel. Wenn Sie Kitt auf Ihre Box. Sshst du zu einer anderen Box und versuchst X11 weiterzuleiten? Beispiel: Putty (box1) -> ssh box2 -> X11-Weiterleitung, wenn ja. Es wird nicht funktionieren. X11 funktioniert nur direkt ab Kitt. Problemumgehung -> Erstellen Sie einen Tunnel zur neuen Box und X11 es :)

Antworten:


6

Ich habe mehr ein paar Stunden damit verbracht, mich mit diesem zu beschäftigen und fast alles ausprobiert.

Sehr erfahren im Umgang mit SSH.
Seltsamerweise wurde diese Zeile hinzugefügt, die es funktionierte / etc / ssh / sshd_config X11UseLocalhost-Nr


Vielen Dank! Nur das Fehlen dieser Leitung war in meinem Fall die Ursache des Problems.
John Smith

3

Ich bin mir nicht sicher, ob es dich noch so lange interessiert, nachdem du gefragt hast, aber ich habe heute das gleiche Problem gelöst.

Sie müssen Folgendes hinzufügen: X11UseLocalhost no zum /etc/ssh/sshd_configSSH-Server hinzufügen und neu starten.

Möglicherweise müssen Sie auch die .XauthorityDatei für den Verbindungshost zum Remote-X-Host hinzufügen :

xauth add {ip}:0 . {32byte code from `xauth list` on the connecting host}

Wo {ip}ist die IP des Remote-X-Hosts und xauth listwird auf dem lokalen Verbindungshost ausgeführt.


2

Nun, ich habe keine Probleme, ich habe es immer ziemlich einfach zum Laufen gebracht, aber vielleicht kann ich helfen, indem ich meine Arbeitsverbindung vergleiche. Ich verbinde mich mit meinem Serversystem mit dem Namen "myserver" und dem Anmeldenamen "myname" unter Verwendung von rsa und nicht mit einem Kennwort (Namen wurden geändert). Dies ist übrigens einfach mit ein paar Befehlen auf dem lokalen System zu tun.

$ ssh -v -X myserver env
OpenSSH_5.8p1 Debian-7ubuntu1, OpenSSL 1.0.0e 6 Sep 2011
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to myserver [192.168.1.111] port 22.
debug1: Connection established.
debug1: identity file /home/myname/.ssh/id_rsa type 1
debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048
debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048
debug1: identity file /home/myname/.ssh/id_rsa-cert type -1
debug1: identity file /home/myname/.ssh/id_dsa type -1
debug1: identity file /home/myname/.ssh/id_dsa-cert type -1
debug1: identity file /home/myname/.ssh/id_ecdsa type -1
debug1: identity file /home/myname/.ssh/id_ecdsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3p1 Debian-3ubuntu7
debug1: match: OpenSSH_5.3p1 Debian-3ubuntu7 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.8p1 Debian-7ubuntu1
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: RSA de:ad:be:ef:00:ff:00:5c:1a:65:8e:01:73:4a:96:da
debug1: Host 'myserver' is known and matches the RSA host key.
debug1: Found key in /home/myname/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /home/myname/.ssh/id_rsa
debug1: Server accepts key: pkalg ssh-rsa blen 279
debug1: Authentication succeeded (publickey).
Authenticated to myserver ([192.168.1.111]:22).
debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: Requesting X11 forwarding with authentication spoofing.
debug1: Sending environment.
debug1: Sending env LC_MESSAGES = en_US.UTF-8
debug1: Sending env LC_COLLATE = en_US.UTF-8
debug1: Sending env LANG = en_US.UTF-8
debug1: Sending env LC_CTYPE = en_US.UTF-8
debug1: Sending command: env
SHELL=/bin/bash
XDG_SESSION_COOKIE=d509ffb7a28e82163e2349554bdbc5ab-1329602932.440753-1239879281
SSH_CLIENT=192.168.1.110 48888 22
USER=myname
MAIL=/var/mail/myname
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
LC_MESSAGES=en_US.UTF-8
LC_COLLATE=en_US.UTF-8
PWD=/home/myname
LANG=en_US.UTF-8
SHLVL=1
HOME=/home/myname
LOGNAME=mynage
SSH_CONNECTION=192.168.1.110 48888 192.168.1.111 22
LC_CTYPE=en_US.UTF-8
DISPLAY=localhost:10.0
_=/usr/bin/env
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug1: client_input_channel_req: channel 0 rtype eow@openssh.com reply 0
debug1: channel 0: free: client-session, nchannels 1
Transferred: sent 2912, received 2760 bytes, in 0.5 seconds
Bytes per second: sent 5503.1, received 5215.8
debug1: Exit status 0

Edit: Oh ja, die Konfigurationsdateien: ssh_config ... Keine der drei wurde überhaupt gesetzt; auskommentiert.

Nur diese wurden gesetzt:

SendEnv LANG LC_*
HashKnownHosts yes
GSSAPIAuthentication yes
GSSAPIDelegateCredentials no

sshd_config ... Wie bei Ihnen, mit dem Zusatz am Ende:

UsePAM yes

Oh, und auf dem Remote-Host:

$ echo $DISPLAY
localhost:10.0

Ich habe noch nie einen VNC-Server verwendet, daher kann dies das Problem sein. Nur neugierig - warum müssen Sie es verwenden? Ich kann mir keinen Grund vorstellen, dies für Linux zu Linux hinzuzufügen, aber ich bin sicherlich kein großer Experte.
Marty Fried
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.