Hvordan installere VNC Server på RHEL 8


VNC (Virtual Network Computing) er en populær plattform for grafisk skrivebordsdeling som lar deg eksternt få tilgang til, se og kontrollere andre datamaskiner over et nettverk som Internett.

VNC bruker Remote Frame Buffer-protokollen (RFB) og fungerer etter klient-server-prinsippet: en server deler utgangen sin (vncserver ) og en klient (vncviewer) kobler til serveren. Merk at den eksterne datamaskinen må ha et skrivebordsmiljø installert.

I denne artikkelen vil vi forklare hvordan du installerer og konfigurerer VNC Remote Access i den siste versjonen av RHEL 8 Desktop-utgaven gjennom en tigervnc-server program.

Krav:

  1. RHEL 8 med minimal installasjon
  2. RHEL 8 med RedHat-abonnement aktivert
  3. RHEL 8 med statisk IP-adresse

Når RHEL 8-systemet ditt oppfyller kravene ovenfor, er du klar til å sette det opp som en VNC-server.

Trinn 1: Deaktiver Wayland Display Manager og aktivering av X.org

1. Standard Desktop Environment (DE) på RHEL 8 er GNOME som er konfigurert til å bruke Wayland skjermbehandler som standard. Wayland er imidlertid ikke et eksternt gjengivelses-API som X.org. Så du må konfigurere systemet til å bruke X.org-skjermbehandleren.

Åpne GNOME Display Manager (GDM) konfigurasjonsfilen ved å bruke din favoritt kommandolinjeredigerer.

vi /etc/gdm/custom.conf

Fjern deretter kommentaren til denne linjen for å tvinge påloggingsskjermen til å bruke Xorg.

WaylandEnable=false

Lagre filen og lukk den.

Trinn 2: Installer VNC Server i RHEL 8

2. TigerVNC (Tiger Virtual Network Computing) er en åpen kildekode, et mye brukt system for grafisk skrivebordsdeling som lar deg fjernstyre andre datamaskiner.

dnf install tigervnc-server tigervnc-server-module

3. Bytt deretter til brukeren du vil kjøre og bruk VNC-programmet ved å angi brukerens VNC-serverpassord (som skal være minst seks tegn), som vist .

su - tecmint
vncpasswd

Bytt nå tilbake til root-kontoen ved å kjøre exit-kommandoen.

exit

Trinn 3 Konfigurer VNC Server i RHEL 8

4. I dette trinnet må du konfigurere TigerVNC-serveren for å starte en visning for brukeren ovenfor på systemet. Start med å lage en konfigurasjonsfil kalt /etc/systemd/system/[email  som følger.

vi /etc/systemd/system/[email 

Legg til følgende konfigurasjon i den (husk å erstatte tecmint med ditt faktiske brukernavn).

[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

Lagre filen og lukk den.

Før vi går videre, la oss kort forstå hvordan VNC-serveren lytter til forespørsler. Som standard bruker VNC TCP-port 5900+N, der N er visningsnummeret. Hvis visningsnummeret er 1, vil VNC-serveren kjøre på skjermportnummeret 5901. Dette er porten du må bruke mens du kobler til serveren, fra klienten.

Trinn 4: Aktiver VNC Service i RHEL 8

5. For å starte VNC-tjenesten, må du deaktivere SELinux som er håndhevingsmodus som standard på RHEL 8.

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

6. Last nå systemd manager-konfigurasjonen på nytt for å bruke de siste endringene, og start deretter VNC-tjenesten, aktiver den til å starte automatisk ved systemoppstartstid og sjekk om den er oppe og kjører ved hjelp av følgende systemctl-kommandoer .

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

7. På dette tidspunktet er VNC-tjenesten oppe og kjører, kontroller at VNC-serveren lytter på TCP-port 5901 ved å bruke netstat-kommandoen.

netstat -tlnp

8. Deretter åpner du porten 5901 i systembrannmurtjenesten som kjører som standard, som vist. Dette gir tilgang til VNC-tjenester fra klienter.

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

Trinn 5: Koble til VNC Server via VNC Client

9. Nå er det på tide å se på hvordan du får tilgang til VNC-serveren fra en klientside. VNC er ikke et sikkert system som standard, noe som betyr at tilkoblingene dine ikke er kryptert i det hele tatt. Men du kan sikre tilkoblinger fra klienten til serveren ved å bruke en teknikk kjent som SSH-tunneling som forklart nedenfor.

Husk at du må konfigurere passordløs SSH-autentisering mellom serveren og klientmaskinen for å øke tilliten mellom de to Linux-systemene.

Åpne deretter et terminalvindu på Linux-klientmaskinen og kjør følgende kommando for å lage en SSH-tunnel til VNC-server (ikke glem å endre banen til identitetsfilen (~/.ssh/rhel8 ) og IP-adressen (192.168.56.110) til serveren tilsvarende):

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

10. Etter å ha opprettet SSH-tunnelen, kan du installere vncviewer-klienten som TigerVNC Viewer på klientmaskinen.

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. Når installasjonen er fullført, kjør VNC-klienten, spesifiser adressen localhost:5901 for å koble til for å vise 1 som følger.

vncviewer localhost:5901
OR
vncviewer 127.0.0.1:5901

Ellers, søk og åpne VNC-klientprogrammet fra systemmenyen, skriv inn adressen ovenfor og klikk Koble til som vist i følgende skjermbilde.

Hvis tilkoblingen er vellykket, vil du bli bedt om VNC-påloggingspassordet som ble opprettet tidligere i trinn 2, punkt 3. Oppgi det og klikk OK for å fortsette.

Etter en vellykket VNC-serverautentisering vil du bli presentert med det eksterne RHEL 8-systemets skrivebordsgrensesnitt. Klikk på Enter for å få tilgang til påloggingsgrensesnittet og oppgi passordet ditt for å få tilgang til skrivebordet.

I denne artikkelen har vi vist hvordan du installerer og konfigurerer VNC-serverRHEL 8. Som vanlig kan du stille spørsmål via tilbakemeldingsskjemaet nedenfor.