[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Starta X-applikationer från ssh



Den 30 december 2010 23:53 skrev Ivar Edebro <ivar@edebro.se>:
>> Hej.
>>
>> Syftet är att starta mplayer på display :0.1 för att få bilden till
>> datorns tv-utgång. Jag loggar in med ssh från en laptop på lokalt wlan då
>> Linuxdatorn står i annat rum.
>>
>>
>> Har kört xhost +. Så det verkar inte vara ett auktoriseringsproblem.
>>
>> Några tips? Har sökt på många forum, men inget har gett mig någon lösning
>> på problemet.
>>
>> //Ivar
>>
>
> Svarar mig själv här då jag på "fel sätt" har löst problemet.
> Problemet var att xhost+ endast överlever en terminalsession. Nu har jag,
> när KDE startat upp, skrivit xhost + i en konsol. Då kan jag logga in med
> ssh från en annan dator och starta lokala X-kommandon.

Det kan vara två olika problem (eller kombination).  Problem med ssh
och dess X11-stöd, eller problem med X11 och X11-serverns lösenord
(MIT-MAGIC-COOKIE-1).

För att se om det är problem med ssh-delen, anslut med "ssh -v -v" och
se vad som händer.

Men här är några vanliga problem (som jag själv råkat ut för någon gång).

Har du provat att använda "ssh -X" eller "ssh -Y"?  Dessa ser till att
sätta upp så att du kan tunnla X11-trafiken via SSH-protokollet.

Har du kollat om något har ändrats i /etc/ssh/sshd_config på maskinen
du loggar in på?   Där finns det direktiv som talar om ifall servern
(mottagaren) skall tillåta att X11 tunnlas via SSH.

Har du kollat om något har ändrats i /etc/ssh/ssh_config på maskinen
du loggar in från?  Där finns det direktiv som talar om ifall
ssh-kommandot skall automatiskt tillåta X11 över SSH eller om man
måste ange -X eller -Y till ssh-kommandot

Har du kommandot "xauth" på maskinen du loggar till och från?  (Det är
xauth man skall använda istället för xhost, även om xhost fungerar att
felsöka med).  Kommandot xauth används för att kunna plocka ut och
lägga till lösenordsrättigheterna för uppkoppling mellan X11-server
och klient.

> Det stora problemet nu är säkerhetshålet att använda xhost +.
>
> Någon som kan tipsa mig eller länka till läsning till hur jag på ett
> säkrare sätt kan auktorisera en eller flera datorer att starta lokala
> x-kommandon på lokal klient?

Du kan börja med att tala om vilka kommandon du använder nu.  Samt vad
felutskrifterna ser ut när du kör dem.  Samt vad du får när du kör
kommandona med -v -v från kommandorad.

HMMM...

Få se, vill du ansluta till en X11-server på den maskin du ansluter
till och inte till den som du ansluter från?
Är det någon som är inloggad på den?  Då har de kontroll över den arbetsplatsen.
Om det inte är någon inloggad på den X11-arbetsplatsen, så får du
naturligtvis inte använda den.  Vilket är vad man normalt vill.
Men om du nu vill använda den, så behöver du antingen hämta
arbetsplatsens MIT-MAGIC-COOKIE-1 (X11-lösenord för arbetsplatsen, som
maskin:1 eller maskin:0.1)

Det du då kan göra är att med xauth list eller xauth nlist se vilka
lösenord som finns.
Vad du måste göra är att se till att det lösen som finns i den
X11-server som du vill ansluta till även finns lokalt.
Om så inte är fallet, så kan du lösa det på många vis. Hämta den som
finns på X11-servern och lagra den lokalt på din maskin (i filen
´~/.xauth med kommandot xauth) eller skapa en ny i X11-servern och
lagra den lokalt.

Läs manualsidan xauth(1).   Speciellt om list, extract och merge (samt
nextract och nmerge).  Kommanot "ssh -e" kan vara användbart när du
skall flytta över MIT-MAGIC-COOKIE mellan maskiner.

> //I
PS:
Har du koll på X11-klient och X11-server samt arbetsplatser och
skärmar i X11? Du vet exempelvis vad maskinnamn:1.3 betyder?

Jag tror att du har, men tänkte jag skulle fråga bara.  Om inte, fråga
igen om det.
DS:


Reply to: