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.
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.
Nie wiem czy zadziała, spróbuj i daj znać
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 😛
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
Z Windows do Windows OK, ale tu opisałem z Windows do Linux ;).
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