gorzow-wlkp.pl/linux
Szyfrowane połączenie ssh
z linuksowego klienta na linuksowy serwer w celu uruchomienia programu opartego na X-WINDOW

Więcej o OpenSSH znajdziesz na sąsiedniej stronie.

 
Przyjmuję, że Klient i serwer pracują na tej samej dystrybucji Linuksa np. Mandrake/Mandriva. Na serwerze jest OpenSSH (sshd), na komputerze klienckim zainstalowano klienta ssh. Serwer sshd został już skonfigurowany i można za pomocą klienta ssh przejąć shella roota na odległym serwerze. Konfigurację OpenSSH umieściłem na sąsiedniej stronie.

Wyobraź sobie, że musisz z Internetu zalogować się na odległy serwer i uruchomić na odległym serwerze jakiś program oparty na okienkach (X-Window) np. z grupy drak (przydatne przy konfiguracji systemu). Można skorzystać z usług programu VNC, opisanego na sąsiedniej stronie. Tutaj zajmiemy się najprostszą wersją: pod odpowiednio skonfigurowanym tunelem ssh uruchomimy zlecenie np. drakxservices (zlecenie to wymaga X-Window).

  • Odpal komputer kliencki pod Linuksem (niekoniecznie w okienkach).
  • Zaloguj się na odległy serwer sshd jako root (może będziesz musiał pierw zalogować się jako zwykły user, a dopiero potem jako root).
  • Wyedytuj plik konfiguracyjny odległego serwera sshd czyli:
    /etc/ssh/sshd_config
  • Odszukaj wpis:
    X11Forwarding yes
    Jeżeli jest zahaszowany lub ma opcję no, to popraw na yes.
  • Wydaj zlecenie:
    /etc/rc.d/init.d/sshd restart
    (w innych dystrybucjach może być /etc/init.d/ssh restart)
  • Teraz na komputerze klienckim zaloguj się w okienkach np. KDE. Ponownie zaloguj się na serwer sshd (powyższe zlecenie zrestartowało sshd i zerwało połączenie). Uwaga: logowanie musi być z atrybutem -X (duże X) czyli:
    ssh -X uzytkownik@serwer
  • Jeżeli zalogowałeś się jako zwykły user, to zaloguj się na roota
  • Wpisz zlecenie drakxservices, by ustawić firewalla odległego serwera

 
Jeżeli nie wierzysz, że udało się nawiązać połączenie szyfrowane z opcją umożliwiającą odpalenie programów wymagających X-Window, to wykonaj sztuczkę:
  • Odpal komputer kliencki pod Linuksem w okienkach np. KDE.
  • Uruchom pseudo-terminal (np. klikając w ikonkę z widokiem czarnego monitorka ;) i zaloguj się na odległy serwer sshd zleceniem:
    ssh -X uzytkownik@serwer
  • Uruchom zlecenie xclock. Pojawi się tarcza zegara z czasem na serwerze.
  • Uruchom drugi pseudo-terminal i wpisz zlecenie xclock. Pojawi się drugi zegar. Jeden zegar wskazuje czas serwera, drugi czas na komputerze klienckim.




twarogal@wp.pl

Wszelkie prawa są zastrzeżone, z wyłączeniem hobbystów, którzy umieszczają opracowania na stronach bez reklam. Dla hobbystów zawartość tej strony jest dostępna bez ograniczeń - używanie i przerabianie moich artykułów są jak najbardziej wskazane, ale na swoją odpowiedzialność.

Aby uniknąć zasysania całej witryny gorzow-wlkp.pl/linux za pomocą programów typu TeleportPro, WebCopier itd. informuję, że udostępniłem spakowaną wersję (w formacie RAR).