Pulpit zdalny do lokalnej sesji w Linuksie

Ostatnio w pracy chciałem sobie nieco ułatwić życie i coś co wydawało mi się proste, zajęło jednak chwilę. Mamy ścianę graficzną do monitorowania sprzętu sieciowego i serwerów, źródłem obrazu są komputery z Linuksem BackBox, zamontowane za monitorami. Są do nich podłączone bezprzewodowe myszy i klawiatury, ale konfigurowanie czegoś z odległości 3-4 metrów jest ponad moje oczy, a ciągłe przesiadanie się by być bliżej monitorów niezbyt wygodne. Naturalnym rozwiązaniem jest remote desktop, czyli pulpit zdalny.

Pulpit zdalny w Linuksie

W linuksie, podobnie jak w Windowsach, jedną z metod zdalnego dostępu do pulpitu jest VNC. Na hoście, do którego chcemy mieć dostęp instalujemy wersję serwerową, do której łączymy się viewerem. Odmian VNC jest sporo: tightvnc, ultravnc, realvnc… Inna metoda to Teamviewer, do zastosować domowych darmowy i nieco okrojony, do korzystania w pracy już płatny. Moje pierwsze podejście do połączenia zdalnego próbowałem konfigurować na VNC. Linux BackBox opiera się na dystrybucji Ubuntu, więc nie ma problemów z instalacją odpowiednich pakietów. Po odpaleniu połączenia zdalnego okazało się, że jestem podpięty do nowej, czystej sesji, a nie tej, która została uruchomiona lokalnie i którą widać na monitorach. Po kilkunastu minutach googlowania poddałem się i zacząłem szukać innego rozwiązania.

Podejście drugie – xrdp i vino

Szukając recepty na podłączanie do uruchomionej sesji przez vnc, natrafiłem na znany mi pakiet xrdp, który umożliwia połączenie z windowsowego klienta rdp do kilku popularnych serwerów pulpitów zdalnych. Natknąłem się też na pakiet vino oparty na vnc, którym bez mała out-of-box można podłączyć się do uruchomionej sesji linuksa. Czyli zaczynamy od instalacji tych dwóch pakietów:

sudo apt-get install vino xrdp

Vino nie startuje automatycznie w XFCE, które jest domyślnym środowiskiem w BackBox. Ustawienie tego to tylko edycja jednego pliku:

sudo nano /etc/xdg/autostart/vino-server.desktop

Do pliku w części OnlyShowIn dopisujemy XFCE:

Musimy jeszcze skonfigurować parametry połączeń zdalnych, w tym celu lokalnie, w terminalu wpisujemy vino-preferences, otworzy się nowe okno, gdzie zaznaczamy opcje jak niżej:

Teraz zmienimy ustawienia xrdp tak, by łączył się do vino. W sumie zmieniamy tylko port na 5900:

sudo nano /etc/xrdp/xrdp.ini

Teraz możemy spróbować się połączyć do naszego Linuksa z poziomu Podłączanie pulpitu zdalnego w Windows. Wpisujemy IP maszyny, wybieramy sesman-Xvnc, wpisujemy login i hasło do konta na linuksie. Połączenie jest zastawiane i… wyskakuje błąd:

Trwałe rozwiązanie tego problemu również nie jest trudne (o ile się wie jak to zrobić 😉 ). Zaczynamy od doinstalowania narzędzi dconf-tools:

sudo apt-get install dconf-tools

Teraz lokalnie, w terminalu (nie zadziała w sesji ssh czy telnet!) wpisujemy:

dconf write /org/gnome/desktop/remote-access/require-encryption false

Dla pewności robimy reboot systemu i ponawiamy próbę połączenia zdalnego:

No i sukces, działa jak należy. Trudno przecenić wygodę takiego rozwiązana, całą konfigurację można robić ze swojego komputera, a efekty widać na wielkich ekranach.

Wojtek

Zobacz komentarze

  • Właśnie dzisiaj, po dwóch tygodniach męczarni (jestem nowym użytkownikiem Debiana 8) udało mi się postawić system + kilka programów. Czy ten sposób nadaje się także na zarządzanie środowiskiem graficznym np. LXDE? Terminal jest dobry, czasami jednak swoje modyfikacje chciałbym zobaczyć, zmiany które wprowadziłem.

    Na razie system będę poznawał, i wiem że takie pytanie jest obciachowe.

    Pozdrawiam.

  • Dziękuję za poradnik! Proszę o dodanie przy dconf write informacji, że komendę wykonujemy na zwykłym koncie (nie su). U mnie na uprawnieniach su wyrzucało komunikaty błędu. Linux Mint XFCE. RDP z Win10 działa pięknie i życie stało się prostsze :)

  • Ubuntu Mate 19.04 działa, ale tak nie do końca. Wyskakuje pytanie o dostęp do pulpitu. Bez akceptacji nie przejdzie.

  • Wymusiłem starsze wersje pakietów instalowane z paczek, ech cały Linux w pigułce, a RDP i tak działa kulawo w porównaniu do możliwości Windows :P

  • A teraz bardzo szczegółowy i niezwykle skomplkowany opis łączenia pulpitu zdalnego w Windows. Uruchamiasz pulpit zdalny, wpisujesz IP (lub znacznie trudniej.... nazwę komputera), logujesz się i gotowe. Niesamowicie skomplikowane, nie to co w Linuxie xD

  • Witam! Dziękuję- wszystko poszło (prawie) bezproblemowo. Otóż jak jestem zalogowany do Ubuntu- to mogę się tam logować poprzez RDP. Jak mi się nawet wyloguje, to na RDP widzę stronę staartową Ubuntu. Jednak nie mogę się zalogować przez RDP, jak jeszcze nie logowałem się w Ubuntu. Ma ktoś coś?

  • @Grzegorz wystarczy to wpisane w konsoli (nie zdalnie!): dbus-launch gsettings set org.gnome.Vino prompt-enabled false

Ostatnie posty

Tani moduł IoT z kamerką ESP32 CAM – pierwsze uruchomienie

Mega tanie, bezprzewodowe moduły Internet of Things na dobre zadomowiły się w naszych sieciach. Od…

6 dni temu

Aktualizacja oprogramowania w stacji lutowniczej AiXun T3A

Pewnie nie każdy posiadacz tytułowej stacji lutowniczej wie, że posiada ona możliwość aktualizacji firmware'u. Producent…

3 tygodnie temu

Programator USB AVR ISP z Arduino Nano

Jakiś czas temu, przeglądając Aliexpress natknąłem się na ciekawy shield do Arduino Nano. Według opisu…

4 tygodnie temu

Tester elementów elektronicznych na atmega – aktualizacja firmware’u

W mailach i komentarzach kilka razy przewijała się prośba o ten wpis. Chodzi o aktualizację…

2 miesiące temu

Wzmacniacz słuchawkowy Lovely Cube – popularny klon Lehmanna

Dziś tematyka audio, a nawet audiofilska. Uznany wzmacniacz słuchawkowy Lehmann Black Cube Linear o dość…

2 miesiące temu

Podsumowanie 2023 roku

Tradycyjnie w styczniu, publikuję podsumowanie minionego roku na stronie grylewicz.pl. Poniżej trochę liczb, lista najpopularniejszych…

3 miesiące temu