Re: ahem.. xhost + ??

From: Robert Martin-Legène (none@robert+bsd-dk--martin-legene.dk.lh.bsd-dk.dk)
Date: Tue 01 Feb 2005 - 22:30:37 CET


Date: Tue, 1 Feb 2005 22:30:37 +0100
From: Robert Martin-Legène <none@robert+bsd-dk--martin-legene.dk.lh.bsd-dk.dk>
To: bsd-dk@bsd-dk.dk
Subject: Re: ahem.. xhost + ??

On Tue, Feb 01, 2005 at 05:36:33PM +0100, Tony Albers wrote:
> Det virkede før, men hvis jeg på min 5.3'er gør flg:

Jeg ved ikke hvorfor det har virket før.. underligt, vil jeg tro? Men se
nedenfor.

> bruger1$ xhost +localhost
> bruger2$ DISPLAY=:0;export DISPLAY
> Xlib: connection to ":0.0" refused by server

localhost er 127.0.0.1, men når du skriver :0 benyttes en Unix-socket i
/tmp, og den har ikke samme IP#. Måske har tidligere implementeringer
oversat det til 127.0.0.1 internt. Hvis du istedet sætter DISPLAY til
localhost:0 så vil det virke.

I "den rigtige verden" vil du selvfølgelig ikke gøre det som du gør
ovenfor, fordi "den rigtige verden" jo består af flerbrugsystemer med
mere end én bruger pr maskine. Med din hjemmepc er det dog sjældent et
problem, men andre steder vil alle på maskinen connecte og læse alle
tastetryk du laver i X. Inklusive passwords i 'su' kommandoer. Så den
bedste metode er nok:

bruger1$ xauth list $DISPLAY
[klip MIT-MAGIC-COOKIE og hexstrengen ud med musen]
bruger1$ su - bruger2
[hvis du ikke skriver minusset, vil $DISPLAY overleve, og behøver ikke
 blive sat]
bruger2$ DISPLAY=localhost:0
bruger2$ export DISPLAY
bruger2$ xauth add $DISPLAY [paste]
bruger2$ xeyes -geometry 1024x768+0+0 &

-- r



This archive was generated by hypermail 2b30 : Wed 15 Nov 2006 - 18:24:48 CET