Zdalny pulpit przez SSH

Serwery i sieci oparte na Slackware, wszelkiego rodzaju usługi, troubleshooting.

Moderatorzy: Moderatorzy, Administratorzy

arcktick
Użytkownik
Posty: 14
Rejestracja: 2007-11-13, 18:06

Zdalny pulpit przez SSH

Post autor: arcktick »

Chodzi mi o mozliwosc polaczenia sie ze zdalnym komputerem i uruchomienia calego srodowiska DE (np KDE ).
Znalazlem tutorial wykorzystujacy X11 forwarding:

http://www.linux-tip.net/cms/content/view/302/26

dotyczy on dystrybucji SUSE , jednak nie sadze zeby forwardowanie X roznilo sie w tym wypadku.
Jezeli chodzi o pliki konfiguracyjne ssh_config i sshd_config to przejechalem sie po nich wzdluz i wszerz :).
Problem pojawia sie w momencie odpalenia xterma . Komenda wykonana na lokalnym kompie o ip 10.10.10.110,
ktory probuje uzyskac dostep do zdalnego serwera:

Kod: Zaznacz cały

xterm –display :12.0 –e ssh –X root@10.10.10.107 &
daje nastepujace rezultaty:

Kod: Zaznacz cały

bash-3.1# No protocol specified
Warning: This program is an suid-root program or is being run by the root user.
The full text of the error or warning message cannot be safely formatted
in this environment. You may get a more descriptive message by running the
program as a non-root user or by removing the suid bit on the executable.
xterm Xt error: Can't open display: %s
Jezeli chodzi o odpalanie pojedynczych aplikacji to wiem jak to zrobic , intersuje mnie jdnak mozliwosc zdalnego uruchomienia calego DE . Z tego co wiem dobry do tego jest FreeNX jednak jego instalacja jest conajmniej karkolomna dla takiego newbie jak ja. Jezeli macie jakies pomysly to piszcie , wszelkie uwagi beda mile widziane . Z gory dzieki
Awatar użytkownika
Corvin
Administrator
Posty: 1143
Rejestracja: 2004-05-21, 15:04
Lokalizacja: Gdańsk

Re: Zdalny pulpit przez SSH

Post autor: Corvin »

nie przesadzaj z NX, wystarczy sciągnąć rpmy od Fedory (wszystkie client, node i server) przerobić je na tgz poleceniem rpm2tgz, zainstalować wymuszająć zgodność z Fedorą, odrobinę skonfigurować, voila działa
"Spróbuj zapalić maleńką świeczkę zamiast przeklinać ciemność."
Konfucjusz
Awatar użytkownika
keddie
Użytkownik
Posty: 79
Rejestracja: 2004-10-23, 11:07

vnc

Post autor: keddie »

a nie prościej taki sam efekt osiągnąć korzystając VNC?
Awatar użytkownika
Corvin
Administrator
Posty: 1143
Rejestracja: 2004-05-21, 15:04
Lokalizacja: Gdańsk

Re: Zdalny pulpit przez SSH

Post autor: Corvin »

vnc jest w tragicznie wolne
"Spróbuj zapalić maleńką świeczkę zamiast przeklinać ciemność."
Konfucjusz
acek
Użytkownik
Posty: 47
Rejestracja: 2006-09-26, 21:27
Kontakt:

Re: Zdalny pulpit przez SSH

Post autor: acek »

Kod: Zaznacz cały

DISPLAY=:12 ssh -Y login@10.10.10.110 /opt/kde/bin/startkde
?
Opcja -X może być za słaba, aby uruchomić menedżer okien. Przeczytaj w manualu opis -Y. Zmienna SSH_ASKPASS też może się przydać.
arcktick
Użytkownik
Posty: 14
Rejestracja: 2007-11-13, 18:06

Re: Zdalny pulpit przez SSH

Post autor: arcktick »

Poszedlem za twoja rada , przy czym miales chyba na mysli kompa o IP: 10.10.10.107 ( to ten zdalny )
niestety znowu cos sie krzaczy tym razem wyglada to nastepujaco(nie wiem czy problem nie tkwi jednak w jakiejs "doglebnej" konfiguracji ssh):

Kod: Zaznacz cały

Warning: No xauth data; using fake authentication data for X11 forwarding.
connect /tmp/.X11-unix/X12: No such file or directory
connect /tmp/.X11-unix/X12: No such file or directory
xsetroot:  unable to open display 'localhost:10.0'
connect /tmp/.X11-unix/X12: No such file or directory
xset:  unable to open display "localhost:10.0"
connect /tmp/.X11-unix/X12: No such file or directory
xsetroot:  unable to open display 'localhost:10.0'
startkde: Starting up...
connect /tmp/.X11-unix/X12: No such file or directory
ksplash: cannot connect to X server localhost:10.0
connect /tmp/.X11-unix/X12: No such file or directory
xprop:  unable to open display 'localhost:10.0'
usage:  xprop [-options ...] [[format [dformat]] atom] ...

where options include:
    -grammar                       print out full grammar for command line
    -display host:dpy              the X server to contact
    -id id                         resource id of window to examine
    -name name                     name of window to examine
    -font name                     name of font to examine
    -remove propname               remove a property
    -set propname value            set a property to a given value
    -root                          examine the root window
    -len n                         display at most n bytes of any property
    -notype                        do not display the type field
    -fs filename                   where to look for formats for properties
    -frame                         don't ignore window manager frames
    -f propname format [dformat]   formats to use for property of given name
    -spy                           examine window properties forever

connect /tmp/.X11-unix/X12: No such file or directory
kdeinit: Can't connect to the X Server.
kdeinit: Might not terminate at end of session.
connect /tmp/.X11-unix/X12: No such file or directory
kded: cannot connect to X server localhost:10.0
DCOP aborting call from 'anonymous-3303' to 'kded'
kded: ERROR: Communication problem with kded, it probably crashed.
connect /tmp/.X11-unix/X12: No such file or directory
kcminit_startup: cannot connect to X server localhost:10.0
connect /tmp/.X11-unix/X12: No such file or directory
connect /tmp/.X11-unix/X12: No such file or directory
ksmserver: cannot connect to X server localhost:10.0
startkde: Shutting down...
klauncher: Exiting on signal 1
startkde: Running shutdown scripts...
connect /tmp/.X11-unix/X12: No such file or directory
xprop:  unable to open display 'localhost:10.0'
usage:  xprop [-options ...] [[format [dformat]] atom] ...

where options include:
    -grammar                       print out full grammar for command line
    -display host:dpy              the X server to contact
    -id id                         resource id of window to examine
    -name name                     name of window to examine
    -font name                     name of font to examine
    -remove propname               remove a property
    -set propname value            set a property to a given value
    -root                          examine the root window
    -len n                         display at most n bytes of any property
    -notype                        do not display the type field
    -fs filename                   where to look for formats for properties
    -frame                         don't ignore window manager frames
    -f propname format [dformat]   formats to use for property of given name
    -spy                           examine window properties forever

startkde: Done.

Probowalem jeszcze z drobna modyfikacja tzn. w ten sposob:

Kod: Zaznacz cały

DISPLAY=10.10.10.107:12 ssh -Y root@10.10.10.107 startkde
A wynik jest taki:

Kod: Zaznacz cały

DISPLAY=10.10.10.100:12 ssh -Y root@10.10.10.107 startkde
root@10.10.10.107's password: 
Warning: No xauth data; using fake authentication data for X11 forwarding.
connect 10.10.10.100 port 6012: Connection refused
connect 10.10.10.100 port 6012: Connection refused
xsetroot:  unable to open display 'localhost:10.0'
connect 10.10.10.100 port 6012: Connection refused
xset:  unable to open display "localhost:10.0"
connect 10.10.10.100 port 6012: Connection refused
xsetroot:  unable to open display 'localhost:10.0'
startkde: Starting up...
connect 10.10.10.100 port 6012: Connection refused
ksplash: cannot connect to X server localhost:10.0
connect 10.10.10.100 port 6012: Connection refused
xprop:  unable to open display 'localhost:10.0'
usage:  xprop [-options ...] [[format [dformat]] atom] ...

where options include:
    -grammar                       print out full grammar for command line
    -display host:dpy              the X server to contact
    -id id                         resource id of window to examine
    -name name                     name of window to examine
    -font name                     name of font to examine
    -remove propname               remove a property
    -set propname value            set a property to a given value
    -root                          examine the root window
    -len n                         display at most n bytes of any property
    -notype                        do not display the type field
    -fs filename                   where to look for formats for properties
    -frame                         don't ignore window manager frames
    -f propname format [dformat]   formats to use for property of given name
    -spy                           examine window properties forever

connect 10.10.10.100 port 6012: Connection refused
kdeinit: Can't connect to the X Server.
kdeinit: Might not terminate at end of session.
connect 10.10.10.100 port 6012: Connection refused
kded: cannot connect to X server localhost:10.0
DCOP aborting call from 'anonymous-3364' to 'kded'
kded: ERROR: Communication problem with kded, it probably crashed.
connect 10.10.10.100 port 6012: Connection refused
kcminit_startup: cannot connect to X server localhost:10.0
connect 10.10.10.100 port 6012: Connection refused
connect 10.10.10.100 port 6012: Connection refused
ksmserver: cannot connect to X server localhost:10.0
startkde: Shutting down...
klauncher: Exiting on signal 1
startkde: Running shutdown scripts...
connect 10.10.10.100 port 6012: Connection refused
xprop:  unable to open display 'localhost:10.0'
usage:  xprop [-options ...] [[format [dformat]] atom] ...

where options include:
    -grammar                       print out full grammar for command line
    -display host:dpy              the X server to contact
    -id id                         resource id of window to examine
    -name name                     name of window to examine
    -font name                     name of font to examine
    -remove propname               remove a property
    -set propname value            set a property to a given value
    -root                          examine the root window
    -len n                         display at most n bytes of any property
    -notype                        do not display the type field
    -fs filename                   where to look for formats for properties
    -frame                         don't ignore window manager frames
    -f propname format [dformat]   formats to use for property of given name
    -spy                           examine window properties forever

startkde: Done.


[/code]
Awatar użytkownika
Corvin
Administrator
Posty: 1143
Rejestracja: 2004-05-21, 15:04
Lokalizacja: Gdańsk

Re: Zdalny pulpit przez SSH

Post autor: Corvin »

cos mi sie wydaje ze powinienies poszukać info nt. polecenia xhost + localhost
"Spróbuj zapalić maleńką świeczkę zamiast przeklinać ciemność."
Konfucjusz
arcktick
Użytkownik
Posty: 14
Rejestracja: 2007-11-13, 18:06

Re: Zdalny pulpit przez SSH

Post autor: arcktick »

Probowalem juz z xhostem w bardzo roznych konfiguracjach ze tak sie wyraze:-)
A moze cos zle mysle. Kiedy lacze sie ze zdalnym hostem i probuje odpalic x u siebie lokalnie tzn. ze na moim komputerze odpala sie x-server a na zdalnym komputerze client? Wydaje mi sie ze tak. Czyli co moj komputer powinien wpuścić xhosta o ip komputera zdalnego?

Kod: Zaznacz cały

hostlokalny@xhost +10.10.10.107
gdzie 10.10.10.107 to oczywiscie IP hosta zdalnego.
Jeżeli zrobie tak:

Kod: Zaznacz cały

hostlokalny@xhost +localhost
To co zezwalam na "wyswietlanie informacji" ze zdalnej lokalizacji na lokalnym kompie ?
Troche zaczynam sie w tym gubic.

Z localhostem tez probowalem caly czas powtarzaja sie te same komunikaty

pozdr i prosze o dalsze uwagi
[/code]
Awatar użytkownika
ulises
Użytkownik
Posty: 314
Rejestracja: 2006-02-10, 20:49
Lokalizacja: Warszawa

Re: Zdalny pulpit przez SSH

Post autor: ulises »

arcktick, odpowiadam na twoje pytania:

na twoim komputrze odpala się serwer na zdalnym klient,
na zdalnym musisz zmienic zmienną DISPLAY,
u siebie uzyć xhost + IP kompa zdalnego

tylko pamiętaj, że domyslnie xhost jest "zablokowany", podobno znalezienie w sieci jak go odblokowac zajmuje minutę ;)

pozdrawiam
This is Linux land. In silent nights you can hear the Windows machines rebooting.
acek
Użytkownik
Posty: 47
Rejestracja: 2006-09-26, 21:27
Kontakt:

Re: Zdalny pulpit przez SSH

Post autor: acek »

arcktick pisze:miales chyba na mysli kompa o IP: 10.10.10.107 ( to ten zdalny )
Tak.
arcktick pisze:

Kod: Zaznacz cały

connect /tmp/.X11-unix/X12: No such file or directory
Sprawdź, czy serwer X działa (jak go uruchamiasz?).
ulises pisze:u siebie uzyć xhost + IP kompa zdalnego
Jestem przekonany, że arcktick chce ustawić forwarding przez ssh ("Zdalny pulpit przez SSH").
Awatar użytkownika
ulises
Użytkownik
Posty: 314
Rejestracja: 2006-02-10, 20:49
Lokalizacja: Warszawa

Re: Zdalny pulpit przez SSH

Post autor: ulises »

własnie sam się pogubiłem, czy on chce forwardować X11 czy "bawić się" samym X11

bo raz poruszane jest jedno, raz drugie :)
This is Linux land. In silent nights you can hear the Windows machines rebooting.
arcktick
Użytkownik
Posty: 14
Rejestracja: 2007-11-13, 18:06

Re: Zdalny pulpit przez SSH

Post autor: arcktick »

Witam ponownie, zaley mi przede wszystkim na odpaleniu X. Jezeli uda sie to zrobic przy pomocy forwardingu to te nie bedzie zle. Zebralem wszystkie rady i poczynilem pewne dzialania ktore nadal nie przynosza skutku.
Po pierwsze na zdalnym komputerze ustawiem DISPLAY na IP_LOCAL:12.0 bylo to dosyc ciezkie poniewaz shel nie reagowal na:

Kod: Zaznacz cały

DISPLAY=IP_LOCAL
export $DISPLAY
wiec dodalem wpis w /etc/profile i dopiero wtedy zaskoczyl ale mniejsza z tym, nastepnie sprobowalem uruchomic jakas aplikacje x-owa ze zdalnego komputera bez forwardingu tz. zalogowalem sie na zdalny komp przez ssh bez opcji -Y i wpisalem xeyes po nacisnieci entera zdalny komputer wyswietlil informacje

Kod: Zaznacz cały

Error: Can't open display: IP_LOCAL:12.0
Natomiast lokalny wyswietlil cos takiego:

Kod: Zaznacz cały

Thu Nov 15 20:41:36 2007: 4807 X: client 1 rejected from IP_REMOTE
To samo powtarza sie przy probie uruchomienia KDE



Co ciekawe po wpisaniu komendy na kompie lokalnym:

Kod: Zaznacz cały

ssh -Y root@IP_REMOTE xeyes 
Aplikacja ta uruchamia sie ale:

Kod: Zaznacz cały

ssh -Y root@IP_REMOTE startkde 
daje taki rezultat:

Kod: Zaznacz cały

KDE seems to be already running on this display.
Co zreszta jest prawda bo KDE jest uruchomione na lokalu tyle ze na consoli(?) numer 7 a nie 12.
Zastosowalem komende xhost + IP_REMOTE i wlaczylem ja na lokalnym komputerze operacja ta niczego nie zmienila. Pozdrawiam prosze o dalsze uwagi i dziekuje za wyrozumialosc:-)
acek
Użytkownik
Posty: 47
Rejestracja: 2006-09-26, 21:27
Kontakt:

Re: Zdalny pulpit przez SSH

Post autor: acek »

arcktick pisze:Po pierwsze na zdalnym komputerze ustawiem DISPLAY na IP_LOCAL:12.0
Zastanawiam się, czy ustawiłeś DISPLAY na właściwym komputerze.
arcktick pisze: bylo to dosyc ciezkie poniewaz shel nie reagowal na:

Kod: Zaznacz cały

DISPLAY=IP_LOCAL
export $DISPLAY

Kod: Zaznacz cały

export DISPLAY
?
arcktick pisze:wiec dodalem wpis w /etc/profile
To nie jest dobry pomysł.
arcktick pisze:Co ciekawe po wpisaniu komendy na kompie lokalnym:

Kod: Zaznacz cały

ssh -Y root@IP_REMOTE xeyes 
Aplikacja ta uruchamia sie
Czy na ekranie prócz uruchomionej aplikacji widoczne są inne okna? Upewnij się, że uruchamiasz KDE, podłączając do osobnego serwera X. Poczytaj o Xnest. Nie napisałeś, jak uruchamiasz serwer X.
Awatar użytkownika
kazalot
Użytkownik
Posty: 1259
Rejestracja: 2006-04-05, 10:48

Re: Zdalny pulpit przez SSH

Post autor: kazalot »

Po pierwsze na zdalnym komputerze ustawiem DISPLAY na IP_LOCAL:12.0 bylo to dosyc ciezkie poniewaz shel nie reagowal na:
xhost ustawiasz na lokalnej(wg twojego nazewnictwa) maszynie, po czym laczysz sie przez ssh(bez zadnego forwardingu) i ustawiasz (w dalszym ciagu przez ssh)zmienna $DISPLAY na adres komputera lokalnego(ten przed ktorego klawiatura sie znajdujesz ;) ), i nie ustawiasz zadnego :12.0 bo raczej nie masz 12 kopii xow odpalonych na tej lokalnej maszynie, tylko ustawiasz IP_LOCAL:0.0
jezeli firewall nie blokuje polaczenia to teraz po wpisaniu (w dalszym ciagu wpisujesz to przez ssh) polecenia , powiniennes zobaczyc program na ekranie.
arcktick
Użytkownik
Posty: 14
Rejestracja: 2007-11-13, 18:06

Re: Zdalny pulpit przez SSH

Post autor: arcktick »

Odpowiadajac na pytania acka:
1.tak DISPLAY ustawilem na kompie zdalnym
2. export DISPLAY dziala tylko dla sesji biezacej(nie wiedziec czemu).
3. aplikacja odpala sie na moim biezacym ekranie(serwerem X loklanego systemu).
Powinna chyba odpalic sie na dwunastce?
4. Osobny serwer odpalam w ten sposob(no lokalu oczywiscie):

Kod: Zaznacz cały

X :12.0 vt12 2>&1 >/dev/null & 
Btw. dzieki za podpowiedz z Xnestem postaram sie pobrobowac.

Odpowiadajac kazalotowi:
1.xhost - zrobilem dokladnie tak jak opisales :-)
2.Display ustaiwlem na IP_LOCAL:12.0 poniewaz wczesniej uzylem polecenia z pkt 4
odpowiedzi dla acka :-)
3.Poszczegolne aplikacje moge odpalić ,nie moge natomiast odpalic calego KDE.


Jak zwykle pozdrawiam dziekujac za pomoc i proszac o dalsze uwagi i wyrozumialosc:-)
ODPOWIEDZ