Jak graficznie połączyć się z serwerem bezgłowym?

42

Mam działający serwer rozwoju Ubuntu. Jest to stary serwer typu rack, który znajduje się gdzieś w lochu firmy, gdzie nikt nigdy nie idzie. Jedynym sposobem, w jaki może to działać, jest tak zwany serwer bezgłowy (tj. Bez podłączonego monitora / klawiatury i akceptujący tylko połączenia sieciowe).

Oczywiście, jeśli potrzebujesz tylko dostępu do terminala, ssh to więcej niż wystarczające. Chciałbym jednak od czasu do czasu łączyć się z interfejsem graficznym. W tej chwili korzystam z wbudowanej funkcji VNC, ale jestem pewien, że nie jest to ani najbardziej wydajny, ani najbezpieczniejszy sposób rozwiązania tego problemu.

Przeprowadziłem trochę badań na ten temat, ale nie doszedłem do żadnych konkretnych wniosków. Czytałem o próbie przekazania środowiska X przez ssh, co przynajmniej rozwiązałoby moje obawy dotyczące bezpieczeństwa. Czy ktoś może podzielić się swoimi doświadczeniami związanymi z konfiguracją? Czy jest jakiś inny sposób, który mógłby być wart spojrzenia?

Niemal wyłącznie łączę się z tym serwerem z komputera z systemem Windows. Nie wiem, czy może to stanowić problem dla niektórych sugerowanych metod.

silvo
źródło

Odpowiedzi:

20

Tak, przekazywanie X przez ssh jest naprawdę piękną rzeczą. Pozwala na korzystanie z aplikacji graficznych w poszczególnych aplikacjach, a okna obsługiwane są przez własne środowisko pulpitu. Nie potrzebujesz nawet środowiska pulpitu zainstalowanego na serwerze.

Musisz jednak skonfigurować pewne elementy uwierzytelniające, aby działało. Wierzę, że potrzebujesz do tego xauth.

Jest również O wiele szybszy niż VNC. VNC zawsze było dość opóźnione w moim doświadczeniu.

Edycja: Nie mam doświadczenia w używaniu tej metody w systemie Windows, ale znalazłem ten samouczek , jeśli jesteś zainteresowany.

DLH
źródło
2
„ssh -X <serwer> <program>” powinien wszystko skonfigurować (nigdy nie musiałem dotykać xauth, chociaż trzeba go zainstalować, aby opcja -X na ssh działała).
Suppressingfire
@Suppressingfire: Oh dzięki. Chyba powinienem sam dołączyć polecenie.
DLH
2
Tak, przekazywanie X działa z Windows. Użyłem go z Cygwin / X na Windows XP. Nie najszybszy ani najładniejszy, ale działa.
mp3foley
Przekazywanie ssh X11 ogranicza także usługi, które musisz włączyć na swoim serwerze! Podejrzewam, że i tak większość serwerów ma ssh. Włączanie zdalnego X11 (XDMCP) nie jest tak naprawdę znane z tego, że jest bezpieczne.
LassePoulsen,
link do samouczka jest teraz zepsuty, czy ktoś może go zaktualizować?
sowa
13

Możesz użyć freenx zamiast vnc . Freenx przesyła polecenia X (z buforowaniem) zamiast bitmap.

txwikinger
źródło
Czy mogę go używać na komputerze z systemem Windows?
silvo
2
Wierzę, że możesz pobrać klienta NoMachine NX dla Windows i że działa on z FreeNX - choć mogę się mylić. nomachine.com/download.php
manyxcxi
9

Xming i XDMCP to genialna opcja.

Edytować:

Xming jest X-serwerem dla systemu Windows opartym na Cygwin i ma możliwość udostępniania schowka oraz implementacji różnych układów pulpitu.

XDMCP jest prostym i - co ważne - niezaszyfrowanym protokołem (nie używaj go przez Internet) do połączenia X-displaymanagera i X-serwera.

ddeimeke
źródło
Prawdopodobnie powinieneś edytować odpowiedź, aby podać nieco więcej szczegółów na temat tego, dlaczego i jak to działa. Wiedza, co oznaczają Xming i XDCMP, jest najlepszym wyborem.
Ressu,
Zrobię to.
ddeimeke
7

Nie wiem o „najlepszym” sposobie, tak sądzę, YMMV, ale oto dość obszerny przegląd dostępnych narzędzi: http://www.mynitor.com/2010/02/07/15-remote-desktop- Solutions-for-Linux /

Oto moje doświadczenie:

  1. nomachine nx - Imponująca prędkość. W trybie macierzystym wydaje się, że jesteś przed konsolą. Obsługuje rozpoczynanie nowych sesji oraz cieniowanie konsoli (ale cieniowanie jest wolniejsze). Obsługuje odłączanie i dołączanie do sesji. Udostępnianie schowka działało dla mnie tylko w jeden sposób i nie byłem w stanie tego naprawić. nomachine oferuje bezpłatne pakiety serwerów i klientów z pewnymi ograniczeniami licencyjnymi.
    FreeNX jest oparty na bibliotekach nomachine nx

  2. x2go - Jestem pod wrażeniem tego również przekierowania dźwięku, ale nie używałem go tak długo, jak nomachine nx, ponieważ dowiedziałem się o tym później.

  3. x11vnc - Świetny serwer vnc, który może podłączyć się do sesji konsoli. Używał go w połączeniu z nomachine nx. Nie jestem pewien, czy można go uruchomić w trybie bezgłowym, ale wymieniam go na wszelki wypadek, ponieważ dla mnie był to najszybszy serwer VNC.

  4. xrdp - wyglądał obiecująco, ale wygląda na niezachowany. Rozwiązanie nomad OpenSuse oparte jest na xrdp i słyszę, że nomad to najlepsza zdalna obsługa pulpitu na Linuksie.

  5. teamviewer - Wersja dla Linuksa jest wciąż w wersji beta, działa pod kontrolą wina i zużywa trochę procesora, ale całkiem niedawno go używałem i byłem z tego zadowolony. Nie jestem pewien, czy działa na bezgłowym serwerze.

Li Lo
źródło
2

Weź również pod uwagę xpra , który pozwala odłączyć się od uruchomionej sesji skądinąd , na przykład „screen for X”.

Istnieje również Window Shifter , interfejs dla Xpra, który powinien działać również w systemie Windows, zobacz wersję demonstracyjną .

niebieskawy
źródło
1
To wygląda interesująco.
Li Lo,
1

Chociaż z natury niepewny, możesz używać XDMCP w sieci lokalnej. Używam go często, aby uzyskać dostęp do maszyn wirtualnych. To tak jak logowanie do pulpitu, tyle że wybrałeś serwer zdalny.

Tim Post
źródło
1

Używam x11vnc , który działa dla mnie bardzo dobrze. Pozwala zachować stałą graficzną sesję między połączeniami, dzięki czemu możesz rozłączyć się i połączyć ponownie, a wszystko będzie tak, jak zostało. Obsługuje również tunelowanie przez SSH. Zobacz dokumentację społeczności Ubuntu, aby uzyskać krótki opis i kilka instrukcji dotyczących jego konfiguracji.

Alex Grin
źródło
1

Z powodzeniem korzystałem z freenx na Ubuntu przy użyciu klienta Windows z http://nomachine.com .

Dla mnie miało to pozwolić na użycie starego tabletu PC (który zmagał się nawet z czystą instalacją systemu Windows XP) jako interfejsu do wydajniejszej maszyny stacjonarnej Ubuntu.

Jedynym problemem, jaki miałem, było to, że musiałeś zmienić „Efekty wizualne” na żaden, aby uzyskać przyzwoitą wydajność.

Zamierzałem skomentować odpowiedź txwikingera sugerującą nxserver, ale nie mam wystarczającej reputacji.

Duża fala
źródło
1

Konfiguracja zdalnego dostępu do X może być zniechęcająca i wymaga wielu kroków.

Używam x2go, który jest łatwy w użyciu i ładuje się, i jest wyjątkowo łatwy w użyciu. Daje ci pełny pulpit, tak jakbyś podłączył nowy ekran i klawiaturę do swojego serwera. Ma pełną funkcjonalność X.

x2go NIE jest rozwiązaniem „zdalnego pulpitu”. Otrzymujesz zupełnie nową sesję. Możesz jednak rozłączyć i ponownie połączyć się z tym samym lub innym komputerem za pomocą klienta x2go; Twój pulpit jest trwały. Co najważniejsze, pulpit na komputerze klienckim można w pełni skalować w czasie rzeczywistym, po prostu zmieniając rozmiar okna.

x2go używa ssh do transportu, więc dane są szyfrowane. Upraszcza to przechodzenie przez zapory ogniowe. Wykorzystanie ssh do transportu nie ma wpływu na prędkość.

Oprogramowanie klienckie x2go jest dostępne dla systemów Linux i Windows oraz Mac.

Bardzo ładne darmowe i otwarte oprogramowanie. Używam tego codziennie.

Hugh Buntu
źródło