Portál AbcLinuxu, 12. října 2025 14:22


Dotaz: Trochu složitější forward X11 zkrze ssh

16.4.2008 14:35 GleraK
Trochu složitější forward X11 zkrze ssh
Přečteno: 867×
Odpovědět | Admin
Ahoj lidi, mám problémek ohledně forwardování X11 pomocí ssh. Jako klient (tam co sedím - notebook) je WinXP, putty a Xming.

Situace - mám Unix, na kterém běží X server, a aplikaci zobrazující se na Unix:0.0

Problém je, že ta aplikace má trochu krkolomné start/stop/konfig skripty. Při spouštění jí předávám parametr, na jaké IP poslouchá X server. Takže pro lokální zobrazení je to "startapp localhost". Pro vzdálené je to "startapp notebook", a aplikace se automaticky pokouší zobrazit se na notebook:0.0 (na vysvětlenou - na localhost:10.0 ta aplikace prostě neopojede).

Je to komerční aplikace i nasazení, takže nějaké šťourání v těch skriptech nepřichází v úvahu z důvodu licenčních a hlavně záručních podmínek. Navíc bych to velmi nerad rozj*bal, protože to je celkem důležitá aplikace...

Takže co umím - z notebooku se po SSH přihlásím do Unixu, a na notebooku si zobrazím xclock (z pohledu Unixu se zobrazuje na Unix:10.0, na notebooku mi běží server na localhost:0.0) - to je v pohodě, všechno běží SSH tunelem pomocí X11 forwardingu.

Pak umím to samé, ale mimo SSH tunel (na Unixu mám xclock -DISPLAY notebook:0.0). Sice vidím hodiny na notebooku, ale data jdou nešifrovaně - což je v uvažovaném případě problém. Tímhle způsobem si umím zobrazit i onu kýženou aplikaci.

Já bych tedy potřeboval, aby si Unix myslel, že zobrazuje na notebook:0.0, ale zároveň aby veškerá spojení probíhala SSH tunelem.

Jak na to? Nejspíš nějaká šikovná konfigurace SSH, ale na to jsem zatím krátkej...

Nějaké brikule s iptables (či nečím podobným, co tam snad bude) také moc nepřicházejí v úvahu. Celé zabezpečení několika Unix strojů spočívá ve fyzické izolaci sítě od zlého světa. Já se tam budu připojovat prostřednictvím nějakého externího firewallu, který mi propustí akorát to SSH.

Díky za rady.
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

16.4.2008 15:33 ams
Rozbalit Rozbalit vše Re: Trochu složitější forward X11 zkrze ssh
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud nemuzete menit iptables ale nepotrebujete, aby na Unixu bezel X server, muzete ho shodit a pak presmerovat lokalni port xserveru na notebook pres ssh. Nebo zkuste pouzit vnc.
16.4.2008 17:13 Ondar | skóre: 25 | blog: Linux_blog
Rozbalit Rozbalit vše Re: Trochu složitější forward X11 zkrze ssh
Odpovědět | | Sbalit | Link | Blokovat | Admin
Tedy, cele mi to pripada ponekud podivne - proc ta aplikace nefunguje pri tunelovani X pres ssh? Pokud nefunguje z duvodu funkcnosti tak ani iptables nepomohou. Spis bych se pidil po tom, jak to rozchodit pres ssh.
16.4.2008 17:47 GleraK
Rozbalit Rozbalit vše Re: Trochu složitější forward X11 zkrze ssh
Díky za komentáře. Problém je v tom, že ta "aplikace" je spíše soubor spousty různých aplikací. Celé se to spouští skriptem, který před spuštěním vlastní X aplikace kontroluje spoustu mě neznámých věcí (něco jsou výstupy binárek, které jsou součástí aplikace), celé je to redundantní s druhým strojem, ... Krom jiného nastavuje proměnnou DISPLAY na něco předaného jako parametr (notebook) a přidá k tomu :0.0, takže výsledek je notebook:0.0. Snažil jsem se skript obelstít, ale nevím jestli s tím zobrazením aplikace nepočítá i nějak vnitřně... Možná seberu odvahu, od jednoho ze strojů vyženu obsluhu, odpojím od technologie a budu si hrát...

Na obou Unixech ta aplikace musí běžet i lokálně.

Je možné, že jsem tomu zamotal hlavu - celé to harakiri jsem původně prováděl se třetím strojem (Unix), který se sice tváří jako plnohodnotný, ale kdo ví jak to ve skutečnosti bere ta aplikace.. Sice mi na chvíli skrze SSH na notebooku naběhl "obraz", ale vzápětí se zhroutila celá aplikace - oba stroje se hlásili jako stand-by, což je jaksi velmi zajímavá věc (-> reboot)..

Asi jsem se v tom sám zamotal. Zkusím to někdy příští týden na ostrém stroji a uvidíme kde je chyba.
16.4.2008 17:24 marek
Rozbalit Rozbalit vše Re: Trochu složitější forward X11 zkrze ssh
Odpovědět | | Sbalit | Link | Blokovat | Admin

Dobry den.

Jestli tomu dobre rozumim, tak Vam jde vpodstate o to, unest pomoci ssh port 6000 jakekoli adresy, ktera je bezpecne dostupna ze serveru.

Pokud to chcete delat jenom pomoci ssh, tak tam potrebujete ssh server, na kterem neni obsazeny port 6000.

Potom staci ssh -R 6000:127.0.0.1:6000 uzivatel@server napsat na notebooku a melo by to fungovat (pokud je to jiny stroj nez server, kde bezi ta aplikace, potom musi mit sshd v configu povoleno se pripojit na 0.0.0.0 a ne jenom na defaultni 127.0.0.1).

Na Reseni s iptables (ktere take moc neprichazi v uvahu) je nejsnazsi si vymyslet nejakou neexistujici adresu, na kterou bude nasmerovano DISPLAY. Vse co na tu adresu a port 6000 smeruje DNATOVAT na jakykoli port, ktery si unesete treba pomoci ssh.

marek
16.4.2008 17:55 GleraK
Rozbalit Rozbalit vše Re: Trochu složitější forward X11 zkrze ssh
Pěkný den. Díky za příspěvek. Upřímně - teď hned nedokážu pochopit jestli to řeší můj problém či nikoliv (asi spíš ne - na serveru (kde je aplikace) běží lokální X server, takže localhost:6000 je tímto obsazen). Každopádně si s tím zkusím pohrát, a rozhodně to přispěje k mému povědomí o ssh i X.
16.4.2008 18:03 marek
Rozbalit Rozbalit vše Re: Trochu složitější forward X11 zkrze ssh

Pokud by bylo mozne do te site pridat nejakeho(treba jen virtualniho) vetrelce s vlastni adresou, na kterem by nebezela X, pak by to bylo jednoduche.

marek
16.4.2008 19:33 GleraK
Rozbalit Rozbalit vše Re: Trochu složitější forward X11 zkrze ssh
Jé, děkuji - to mě nenapadlo. Jako brána mezi uzavřenou sítí a podnikovou LAN (potažmo dále i-netem) bude pravděpodobně nějaké PC s linuxem, takže tímhle stylem by to patrně vyřešit šlo celkem elegantně bez zásahu do stávající logiky.

Patrně odložím pokusy na reálných serverech, rozběhám na notebooku několik virtuálních strojů s linuxem a pustím se do experimentování.

Díky za nápad, časem se podělím o výsledek (ale nebude to moc brzo, jeden průšvih s výpadkem systému za týden stačí ;-) )

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.