remote-X over ssh

Jan-Benedict Glaw jbglaw at lug-owl.de
Mon Nov 22 19:15:12 CET 2004


On Mon, 2004-11-22 18:56:37 +0100, Stefan Ulrich Hegner <stefan at hegner-online.de>
wrote in message <1101146197.5109.2.camel at hegi.hegner.hn.org>:
> Am Montag, den 22.11.2004, 17:03 +0100 schrieb Jan-Benedict Glaw: 
> > > Soweit OK. Löst auf dem Server auf die richtige IP auf. 
> > 
> > ...und ich vermute, daß genau da das Problem ist:-)
> > 
> > Ich hab' sowas mal gehabt, da war IIRC der domain- oder search-Eintrag
> > in der /etc/resolv.conf kaputt und/oder stimmte nicht mit Einträgen
> > inder /etc/hosts (bzw. im DNS) überein.
> 
> Hmmm. Auf dem remote-Server passen die Einträge in der bind Config (und
> der Output von host) sowie die /etc/hosts Einträge in beide Richtungen.

...wenn dem so ist, dann müßtest Du im strace eines X11-Programmes
sehen, daß es zu dem ssh-getunnelten X11-Port connect()en will. Klappt
das?

> > Guck doch mal (netstat -A inet -a -n bzw. netstat -A inet6 -a -n), ob
> > der sshd an der IP-Adresse (der regulären) oder an lokalost (127.0.0.1)
> > auf Port 6000 lauscht (6000+0 (wobei die null von vor dem Punkt aus der
> > DISPLAY-Variable kommt).
> 
> Was hat das mit dem o.g. DNS/HOSTS Krams zu tun?

In DISPLAY steht hostname:display.screen .  Den hostname muß der
X11-Client dann natürlich auch exakt genauso auflösen, wie das vorher
der ssh-Server gemacht hat. Sonst kommt's zu so Dingen, wie Server nimmt
IP-x und der Client nimmt IP-y ...

> hegi at hegi:~ > netstat -A inet -a -n |egrep :6
> tcp        0      0 0.0.0.0:631        0.0.0.0:*               LISTEN
> tcp        0      0 127.0.0.1:6010     0.0.0.0:*               LISTEN

Ei, guck an. 127.0.0.1:6010 entspricht DISPLAY=localhost:10.x. Das paßt
nicht mit dem überein, was in der DISPLAY-Variablen (richtiger-name:0.0)
stand.

Kurzum: ssh-Server und X11-Client lösen den Rechnernamen unterschiedlich
auf.

> Sieht schlecht aus. Ansonsten ist "X11DisplayOffset 10" auch nicht
> gesetzt. - Keine Ahnung was er da auf 6010/1 horcht ...

127.0.0.1:6010 entspricht "localhost:10.0". Trag' das doch mal testweise
in $DISPLAY ein.


Also, die Namensauflösung ist nicht sauber. Da hilft strace, wenn Du's
nicht direkt in /etc/resolv.conf, /etc/hosts und im DNS-Server findest.
...sowohl vom ssh-Server (und dem ge-fork()-ten Kind für Deine
eingehende Verbindung) als auch vom startenden X11-Client.

MfG, JBG

-- 
Jan-Benedict Glaw       jbglaw at lug-owl.de    . +49-172-7608481             _ O _
"Eine Freie Meinung in  einem Freien Kopf    | Gegen Zensur | Gegen Krieg  _ _ O
 fuer einen Freien Staat voll Freier Bürger" | im Internet! |   im Irak!   O O O
ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lug-owl.de/pipermail/linux/attachments/20041122/6afbe946/attachment.sig>


More information about the Linux mailing list