Hvordan installere og konfigurere VNC Server i CentOS og RHEL
I denne veiledningen forklarer vi hvordan du installerer og konfigurerer VNC Remote Access på CentOS 7/8 og RHEL 9/8/7 skrivebord utgave via tigervnc-server-programmet for å få tilgang til eksterne skrivebordsmaskiner.
VNC (Virtual Network Computing) er en server-klient-protokoll som lar brukerkontoer eksternt koble til og kontrollere et fjerntliggende system ved å bruke ressursene fra det grafiske brukergrensesnittet.
I motsetning til andre tilgjengelige VNC-servere som kobles direkte til kjøretidsskrivebordet, for eksempel VNC X eller Vino, tigervnc-vncserver > bruker en annen mekanisme som konfigurerer et frittstående virtuelt skrivebord for hver bruker.
Krav
- Installasjon av CentOS 8 med skjermbilder
- CentOS 7 installasjonsprosedyre
- Hvordan installere RHEL 9 gratis
- Hvordan installere RHEL 8 gratis
- RHEL 7 Installasjonsprosedyre
Trinn 1: Installer og konfigurer VNC på CentOS
1. Tigervnc-server er et program som kjører en Xvnc-server og starter parallelle økter med Gnome eller andre skrivebord miljøer på VNC-skrivebordet.
En startet VNC-brukerøkt kan nås av samme bruker fra flere VNC-klienter. For å installere TigerVNC-serveren i CentOS/RHEL, åpne en terminaløkt og utfør følgende yum-kommando med root-privilegier.
sudo yum install tigervnc-server
2. Etter at du har installert programmet, logg på med brukeren du vil kjøre VNC-programmet og utfør kommandoen nedenfor i terminalen for å konfigurere en passord for VNC-serveren.
Vær oppmerksom på at passordet må være minst seks tegn langt.
su - your_user
vncpasswd
3. Deretter legger du til en VNC-tjenestekonfigurasjonsfil for brukeren din via en demon-konfigurasjonsfil plassert i systemd-katalogtreet. For å kopiere VNC-malfilen må du kjøre følgende cp-kommando med root-privilegier.
Hvis brukeren din ikke får sudo-privilegier, bytter du enten direkte til root-kontoen eller kjører kommandoen fra en konto med root-privilegier.
cp /lib/systemd/system/[email /etc/systemd/system/vncserver@:1.service
4. I neste trinn redigerer du den kopierte VNC-malkonfigurasjonsfilen fra katalogen /etc/systemd/system/ og erstatter følgende verdier for å gjenspeile brukeren din som vist i nedenfor prøve.
Verdien til 1
etter @
-tegnet representerer visningsnummeret (port 5900+display
). For hver startet VNC-server vil port 5900 også økes med 1.
vi /etc/systemd/system/vncserver@\:1.service
Legg til følgende linjer i filen vncserver@:1.service.
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
User=tecmint
Group=tecmint
WorkingDirectory=/home/tecmint
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver %i -geometry 1280x1024
PIDFile=/home/tecmint/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
5. Etter at du har gjort de riktige endringene i VNC-tjenestefilen, last inn systeminitialiseringsprogrammet på nytt for å hente den nye vnc-konfigurasjonsfilen og starte TigerVNC-serveren.
Sjekk også VNC-tjenestestatusen og aktiver VNC-demonen for hele systemet ved å utstede kommandoene nedenfor.
systemctl daemon-reload
systemctl start vncserver@:1
systemctl status vncserver@:1
systemctl enable vncserver@:1
6. For å vise de åpnede portene i lyttetilstanden som eies av VNC-serveren, kjør kommandoen ss, som brukes til å vise nettverkskontakter. Fordi du bare har startet én forekomst av VNC-serveren, er den første åpne porten 5901/TCP.
Igjen, ss-kommandoen må utføres med root-privilegier. I tilfelle du starter andre VNC-instanser parallelt for forskjellige brukere, vil portverdien være 5902 for den andre, 5903 for den tredje, og så videre. Portene 6000+ brukes for å la X-applikasjonene koble til VNC-serveren.
ss -tulpn| grep vnc
7. For å tillate eksterne VNC-klienter å koble til VNC-serveren, må du sørge for at de riktige åpne VNC-portene får passere gjennom brannmuren.
I tilfelle bare én forekomst av VNC-serveren startes, trenger du bare å åpne den første tildelte VNC-porten: 5901/TCP ved å utstede kommandoene nedenfor for å bruke brannmurkonfigurasjonen under kjøring.
firewall-cmd --add-port=5901/tcp
firewall-cmd --add-port=5901/tcp --permanent
Trinn 2: Koble til CentOS Desktop via VNC Client
8. Siden det er en plattformuavhengig protokoll, kan eksterne Graphical User Interface VNC-tilkoblinger utføres fra nesten alle operativsystemer med en GUI og en spesialisert VNC-klient.
En populær VNC-klient som brukes i Microsoft-baserte operativsystemer, fullt kompatibel med Linux TigerVNC-serveren, er RealVNC VNC Viewer.
For å eksternt koble til CentOS Desktop fra et Microsoft OS via VNC-protokoll, åpne VNC Viewer-programmet, legg til IP-adressen og portnummeret til CentOS VNC-serveren, og trykk på [enter]-tasten.
Etter at VNC-tilkoblingen er opprettet, skal en advarsel som sier at tilkoblingen ikke er kryptert vises på skjermen som illustrert i skjermbildene nedenfor.
9. For å omgå advarselen, trykk på Fortsett-knappen, legg til passordoppsettet for VNC-serveren ved punkt 2, og du bør være eksternt koblet til CentOS Desktop med brukeren som er konfigurert til å kjøre VNC-serverforekomsten.
10. I tilfelle en ny Autentisering-melding vises på skjermen din og brukeren din ikke har root-privilegier, trykker du bare på Avbryt-knappen for å fortsette til CentOS Desktop, som vist i skjermbildet nedenfor.
Vær oppmerksom på at den etablerte VNC-kommunikasjonen mellom serveren og klienten og alle data som utveksles (unntatt passordet) går over en ukryptert kanal. For å kryptere og sikre VPN-dataoverføringen, må du først sette opp en sikker SSH-tunnel og kjøre eventuell påfølgende VPN-trafikk over SSH-tunnelen.
11. For å eksternt koble til CentOS Desktop via VNC-protokollen fra andre CentOS Desktops, må du først sørge for at vinagre-pakken er installert på systemet ditt ved å gi kommandoen nedenfor.
sudo yum install vinagre
12. For å åpne vinagre-verktøyet, gå til Programmer -> Verktøy -> Remote Desktop Viewer som vist i skjermbildet nedenfor.
13. For å eksternt koble til en CentOS Desktop, trykk på Koble til-knappen, velg VNC-protokoll fra listen og legg til IP-adressen og port (5900+displaynummer) til den eksterne VNC-serveren. Oppgi også passordoppsettet for VNC-brukeren som illustrert i de følgende skjermbildene.
14. En annen populær VNC-klient for Linux-baserte plattformer er Remmina, en ekstern skrivebordsklient som brukes spesielt i Debian-baserte distribusjoner som kjører skrivebordsmiljøet GNOME.
For å installere Remmina Remote Desktop-klienten i Debian-baserte distros, utfør følgende kommando.
sudo apt-get install remmina
Trinn 3: Konfigurer flere VNC-økter på CentOS
15. Hvis du trenger å kjøre en ny parallell VNC-sesjon under samme bruker, åpner du en terminalkonsoll, logger på med brukeren du vil starte den nye VNC-sesjonen, og utfør kommandoen nedenfor.
Når du først starter serveren vil du bli bedt om å oppgi et nytt passord for denne økten. Vær imidlertid oppmerksom på at denne økten kjører med dine påloggede brukertillatelser og uavhengig av den startet systemd VNC-serversesjonen.
vncserver
16. De nye VNC-sesjonene vil åpne de neste tilgjengelige VNC-baserte portene (5900+3 vises i dette eksemplet). For å vise de åpnede portene, utfør ss-kommandoen uten root-privilegier som illustrert i utdraget nedenfor. Den vil kun vise de påbegynte VNC-sesjonene som brukeren din skylder.
ss -tlpn| grep Xvnc
17. Koble nå til CentOS Desktop eksternt med denne nye VNC-sesjonen, og oppgi IP:port-kombinasjonen (192.168.1.23:5903) i VNC-klienten som illustrert i bildet nedenfor.
For å stoppe VNC-serverforekomstene som ble startet med disse påloggede brukertillatelsene, utsted følgende kommando uten root-privilegier. Denne kommandoen vil ødelegge alle startete VNC-forekomster som kun eies av brukeren som oppga dem.
su - your_user
killall Xvnc
Det er alt! Du kan nå få tilgang til CentOS-systemet ditt og utføre administrative oppgaver ved å bruke det grafiske brukergrensesnittet fra operativsystemet.