Wyszukiwanie w witrynie

Jak zainstalować serwer VNC na RHEL 8


VNC (Virtual Network Computing) to popularna platforma do graficznego udostępniania pulpitu, która umożliwia zdalny dostęp, przeglądanie i kontrolowanie innych komputerów przez sieć taką jak Internet.

VNC korzysta z protokołu Remote Frame Buffer (RFB) i działa na zasadzie klient-serwer: serwer udostępnia swoje dane wyjściowe (vncserver ), a klient (vncviewer) łączy się z serwerem. Należy pamiętać, że na komputerze zdalnym musi być zainstalowane środowisko pulpitu.

W tym artykule wyjaśnimy, jak zainstalować i skonfigurować Dostęp zdalny VNC w najnowszej wersji RHEL 8 Desktop za pośrednictwem serwera tigervnc program.

Wymagania:

  1. RHEL 8 przy minimalnej instalacji
  2. RHEL 8 z włączoną subskrypcją RedHat
  3. RHEL 8 ze statycznym adresem IP

Gdy Twój system RHEL 8 spełni powyższe wymagania, możesz go skonfigurować jako serwer VNC.

Krok 1: Wyłączanie Wayland Display Manager i włączanie X.org

1. Domyślne Środowisko graficzne (DE) w RHEL 8 to GNOME, które jest domyślnie skonfigurowany do używania menedżera wyświetlania Wayland. Jednak Wayland nie jest interfejsem API do zdalnego renderowania, takim jak X.org. Musisz więc skonfigurować swój system do korzystania z menedżera wyświetlania X.org.

Otwórz plik konfiguracyjny GNOME Display Manager (GDM) za pomocą ulubionego edytora wiersza poleceń.

vi /etc/gdm/custom.conf

Następnie odkomentuj tę linię, aby wymusić użycie Xorg na ekranie logowania.

WaylandEnable=false

Zapisz plik i zamknij go.

Krok 2: Zainstaluj serwer VNC w RHEL 8

2. TigerVNC (Tiger Virtual Network Computing) to szeroko stosowany system open source do udostępniania graficznego pulpitu, który umożliwia zdalne sterowanie inne komputery.

dnf install tigervnc-server tigervnc-server-module

3. Następnie przejdź do użytkownika, którego chcesz uruchomić i użyj programu VNC, ustawiając hasło serwera VNC użytkownika (które powinno składać się z co najmniej sześciu znaków), jak pokazano .

su - tecmint
vncpasswd

Teraz wróć do konta root, uruchamiając polecenie wyjścia.

exit

Krok 3 Skonfiguruj serwer VNC w RHEL 8

4. W tym kroku musisz skonfigurować serwer TigerVNC, aby rozpoczął wyświetlanie w systemie powyższego użytkownika. Zacznij od utworzenia pliku konfiguracyjnego o nazwie /etc/systemd/system/[email  w następujący sposób.

vi /etc/systemd/system/[email 

Dodaj w nim poniższą konfigurację (pamiętaj, aby zastąpić tecmint swoją rzeczywistą nazwą użytkownika).

[Unit] 
Description=Remote desktop service (VNC) 
After=syslog.target network.target 

[Service] 
Type=forking 
WorkingDirectory=/home/tecmint 
User=tecmint 
Group=tecmint 

PIDFile=/home/tecmint/.vnc/%H%i.pid 

ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :' 
ExecStart=/usr/bin/vncserver -autokill %i 
ExecStop=/usr/bin/vncserver -kill %i 

[Install] 
WantedBy=multi-user.target

Zapisz plik i zamknij go.

Zanim przejdziemy dalej, przyjrzyjmy się pokrótce, w jaki sposób serwer VNC nasłuchuje żądań. Domyślnie VNC używa portu TCP 5900+N, gdzie N to numer wyświetlacza. Jeśli numer wyświetlacza to 1, serwer VNC będzie działał na porcie wyświetlacza o numerze 5901. Jest to port, którego musisz używać podczas łączenia się z serwerem od klienta.

Krok 4: Włącz usługę VNC w RHEL 8

5. Aby uruchomić usługę VNC, musisz wyłączyć SELinux, który domyślnie znajduje się w trybie wymuszania w RHEL 8.

setenforce 0
sed -i 's/enforcing/disabled/g' /etc/selinux/config

6. Teraz załaduj ponownie konfigurację menedżera systemowego, aby zastosować ostatnie zmiany, a następnie uruchom usługę VNC, włącz jej automatyczne uruchamianie podczas uruchamiania systemu i sprawdź, czy jest uruchomiona i działa, używając następujących poleceń systemctl .

systemctl daemon-reload
systemctl start vncserver@:1
systemctl status vncserver@:1
systemctl enable vncserver@:1

7. W tym momencie usługa VNC jest już uruchomiona. Sprawdź, czy serwer VNC nasłuchuje na porcie TCP 5901, używając polecenia netstat.

netstat -tlnp

8. Następnie otwórz port 5901 w usłudze zapory systemowej, która jest domyślnie uruchomiona, jak pokazano. Umożliwia to dostęp do usługi VNC od klientów.

firewall-cmd --permanent --add-port=5901/tcp
firewall-cmd --reload

Krok 5: Łączenie się z serwerem VNC poprzez klienta VNC

9. Teraz czas przyjrzeć się, jak uzyskać dostęp do serwera VNC od strony klienta. VNC domyślnie nie jest systemem bezpiecznym, co oznacza, że Twoje połączenia nie są w ogóle szyfrowane. Można jednak zabezpieczyć połączenia klienta z serwerem za pomocą techniki zwanej tunelowaniem SSH, jak wyjaśniono poniżej.

Pamiętaj, że musisz skonfigurować uwierzytelnianie SSH bez hasła między serwerem a komputerem klienckim, aby zwiększyć zaufanie między dwoma systemami Linux.

Następnie na komputerze klienckim z systemem Linux otwórz okno terminala i uruchom następujące polecenie, aby utworzyć tunel SSH do serwera VNC (nie zapomnij zmienić ścieżki do pliku tożsamości (~/.ssh/rhel8 ) i odpowiednio adres IP (192.168.56.110) serwera):

ssh -i ~/.ssh/rhel8 -L 5901:127.0.0.1:5901 -N -f -l tecmint 192.168.56.110

10. Po utworzeniu tunelu SSH możesz zainstalować na komputerze klienckim klienta vncviewer, takiego jak TigerVNC Viewer.

sudo apt install tigervnc-viewer         #Ubuntu/Debian
yum install tigervnc-viewer              #CnetOS/RHEL
yum install tigervnc-viewer              #Fedora 22+
sudo zypper install tigervnc-viewer      #OpenSUSE
pacman -S tigervnc                       #Arch Linux

11. Po zakończeniu instalacji uruchom klienta VNC, podaj adres localhost:5901, z którym chcesz się połączyć, aby wyświetlić 1 w następujący sposób.

vncviewer localhost:5901
OR
vncviewer 127.0.0.1:5901

Możesz też wyszukać i otworzyć program kliencki VNC z menu systemowego, następnie wpisać powyższy adres i kliknąć Połącz, jak pokazano na poniższym zrzucie ekranu.

Jeśli połączenie się powiedzie, zostaniesz poproszony o podanie hasła logowania VNC utworzonego wcześniej w kroku 2, punkt 3. Podaj je i kliknij OK, aby kontynuować.

Po pomyślnym uwierzytelnieniu serwera VNC zostanie wyświetlony interfejs zdalnego pulpitu systemu RHEL 8. Kliknij Enter, aby uzyskać dostęp do interfejsu logowania i podaj hasło, aby uzyskać dostęp do pulpitu.

W tym artykule pokazaliśmy, jak zainstalować i skonfigurować serwer VNC na RHEL 8. Jak zwykle możesz zadawać pytania za pomocą poniższego formularza opinii.