Serwer z Linuksem nie ma ekranu i zwykle go nie potrzebuje. Czasem jednak tak: przeglądarka, która musi działać z adresu samego serwera, narzędzie wyłącznie graficzne albo pulpit, który można zostawić włączony i wrócić do niego z dowolnego komputera. Ten poradnik dodaje do Ubuntu 24.04 lekki pulpit XFCE i xrdp, żebyś otwierał go tą samą aplikacją Pulpit zdalny, co serwer z Windows.
Sprawdziliśmy każdy krok na naszym obrazie Ubuntu 24.04. Dwa domyślne ustawienia zepsuły pierwszą próbę, a poniżej naprawiamy oba. Potrzebny jest zwykły użytkownik z sudo — tworzy go poradnik konfiguracji Ubuntu. W przykładach nazywa się deploy.
1. Zainstaluj XFCE i xrdp
sudo apt update
sudo apt install -y xfce4 xfce4-goodies xrdp
Na naszym serwerze z 2 GB trwało to około czterech i pół minuty i zajęło 1,7 GB dysku (2,7 GB zajęte przed, 4,4 GB po). Instaluje się xrdp 0.9.24, który od razu startuje i nasłuchuje na porcie 3389.
2. Niech xrdp uruchamia XFCE, a nie GNOME
Zaloguj się jako użytkownik, który będzie korzystał z pulpitu, i wykonaj:
echo xfce4-session > ~/.xsession
Bez tego pliku nasze pierwsze logowanie uruchomiło GNOME zamiast XFCE, a sesja od razu padła z komunikatem „Oh no! Something has gone wrong”. Pakiety z kroku 1 instalują przy okazji menedżer sesji GNOME, a Ubuntu ustawia go jako domyślny. Z plikiem ~/.xsession xrdp uruchamia XFCE.
3. Pozwól xrdp używać TLS
xrdp działa jako własny użytkownik xrdp, który nie może odczytać klucza prywatnego serwera. Nasze pierwsze połączenie zadziałało, ale /var/log/xrdp.log pokazał, dlaczego nie warto mu ufać:
Cannot read private key file /etc/xrdp/key.pem: Permission denied
Non-TLS connection established from ::ffff:127.0.0.1
Bez klucza xrdp wraca do starego szyfrowania RDP zamiast TLS. Daj mu dostęp i zrestartuj:
sudo adduser xrdp ssl-cert
sudo systemctl restart xrdp
Kolejne połączenie w naszym logu wyglądało tak: TLS connection established ... TLSv1.3. Swoje sprawdzisz w ten sam sposób:
sudo grep -E "TLS connection|Non-TLS" /var/log/xrdp.log | tail -2
4. Trzymaj port 3389 z dala od internetu
Po instalacji xrdp nasłuchuje na wszystkich adresach. W przeciwieństwie do Windows xrdp nie ma Network Level Authentication, więc każdy, kto dosięgnie portu, dostaje ekran logowania do zgadywania haseł. Niech nasłuchuje tylko na samym serwerze:
sudo sed -i 's|^port=3389$|port=tcp://127.0.0.1:3389|' /etc/xrdp/xrdp.ini
sudo systemctl restart xrdp
ss -ltn | grep 3389
Ostatni wiersz powinien pokazać 127.0.0.1:3389. W naszym teście bezpośrednie połączenie z adresem serwera na 3389 było potem odrzucane, a tunel z następnego kroku działał dalej.
5. Łącz się przez SSH
Na swoim komputerze otwórz tunel. W Windows to samo polecenie ssh jest w PowerShell:
ssh -L 13389:localhost:3389 deploy@YOUR.SERVER.IP
Na planie z NAT dodaj -p i osobisty port SSH z panelu. Nie zamykaj tego okna. Potem skieruj aplikację pulpitu zdalnego na localhost:13389 i zaloguj się jako deploy hasłem tego użytkownika:
- Windows: Podłączanie pulpitu zdalnego (
mstsc). - macOS: Windows App z App Store.
- Linux: Remmina albo
xfreerdp /v:localhost:13389 /u:deploy.
Port lokalny to 13389, a nie 3389, bo 3389 na twoim komputerze może już zajmować jego własny Pulpit zdalny. Za pierwszym razem aplikacja ostrzeże o nieznanym certyfikacie. To samopodpisany certyfikat serwera, a połączenie i tak jest szyfrowane wewnątrz SSH.
6. Co dostajesz
Dostajesz pulpit XFCE z panelem, menedżerem plików i terminalem. Na naszym serwerze jedna sesja dodała około 360 MB RAM: 388 MB zajęte przed połączeniem, 747 MB w trakcie sesji.
Zamknięcie okna pulpitu zdalnego nie wylogowuje. W naszym teście długie polecenie działało dalej po rozłączeniu. Gdy połączyliśmy się ponownie, xrdp wrócił nas do tej samej sesji (reconnected session ... display :10 w jego logu). Aby naprawdę zakończyć sesję, użyj Log Out w menu XFCE.
Jaki plan
Pulpit potrzebuje bardziej RAM niż CPU. Micro (2 vCPU, 2 GB, 25 GB, $5/mies.) spokojnie uciągnie XFCE i lekkie narzędzia. Jeśli w sesji ma być stale otwarta przeglądarka, weź Small z 4 vCPU i 4 GB za $8/mies. Oba plany są z NAT i tu to nie przeszkadza: pulpit zdalny idzie przez twój port SSH.
Jeśli tak naprawdę potrzebujesz programów dla Windows, uruchomi je bezpośrednio VPS z Windows, a Windows-Small kosztuje od $11/mies. Ubuntu 24.04 jest na stronie Ubuntu VPS i na każdym planie z Linuksem w dziale VPS. Płatność w USDT, USDC lub ETH w sieciach Base, Ethereum lub Polygon.
Komentarze
Brak komentarzy. Bądź pierwszy.