Det meste av tiden som Linux -systemadministrator administrerer du serverne dine over nettverket. Det er veldig sjelden at du må ha en fysisk tilgang til noen av de administrerte serverne dine. I de fleste tilfeller er alt du trenger å SSH eksternt for å gjøre administrasjonsoppgavene dine. I denne artikkelen vil vi konfigurere et GUI -alternativ til en ekstern tilgang til RHEL -serveren din, som er VNC. VNC lar deg åpne en ekstern GUI -økt for serveren din og dermed gi deg et fullstendig grafisk grensesnitt tilgjengelig fra et hvilket som helst eksternt sted.
I denne opplæringen lærer du:
- Hvordan installere nødvendige VNC -pakker
- Hvordan sette opp og starte VNC -serveren på RHEL
- Hvordan koble til en grafisk økt eksternt
- Hvordan kjøre grafiske programmer i XTERM -økten
Kategori | Krav, konvensjoner eller programvareversjon brukt |
---|---|
System | Red Hat Enterprise Linux |
Programvare | Tigervnc |
Annen | Privilegert tilgang til Linux -systemet ditt som rot eller via sudo kommando. |
Konvensjoner | # - Krever gitt Linux -kommandoer som skal utføres med rotrettigheter enten direkte som rotbruker eller ved bruk av sudo kommando$ - Krever gitt Linux-kommandoer som skal utføres som en vanlig ikke-privilegert bruker |
Installasjon og oppsett av VNC -serveren
Det er mange vindusledere vi kan bruke med VNC -serveren, men for denne opplæringen vil vi konfigurere en enkel XTERM -økt, som xterm
er i base -depotene til Red Hat Enterprise Linux. Vi vil imidlertid vise at dette enkle utgangspunktet gir om full funksjonalitet med et enkelt triks. Legg også merke til at det er mye mer sofistikerte vindusledere der ute, som xfce
, Men det er utenfor omfanget av denne opplæringen.
- Først må vi installere de nødvendige pakkene for serverapplikasjonen:
# dnf installer tigervnc-server xterm
- Neste må vi åpne brannmuren for tjenesten. For å sjekke hvilke tjenester som er tillatt for øyeblikket, viser vi aktiverte tjenester:
# Firewall-CMD-List-Services Cockpit DHCPV6-CLIENT SSH
Åpne
VNC-server
service:# Firewall-CMD-Permanent-Zone = public-Legg til Service VNC-server suksess
Bruk konfigurasjonsendringen:
# Firewall-CMD-Reload
Og liste tjenester igjen for å bekrefte:
# Firewall-CMD-List-Services Cockpit DHCPV6-CLIENT SSH VNC-server
ADVARSEL
Ikke åpne datamaskinens VNC -tjeneste for publikum! Brannmurregelen ovenfor utføres i et avgrenset miljø, og er kun til demonstrasjonsformål. Sørg for å forstå risikoen før du åpner noe på en internettvendt server, eller til og med skrivebord. - Vi må sette opp miljøet der serveren kjører. I dette eksemplet er målet vårt å kjøre serveren med en spesifisert bruker
Testuser
som ikke harrot
privilegier. Merk at dette trinnet gjøres med brukeren som kjører serveren, ikkerot
. Vi setter opp et passord som tillater tilkobling (som ikke har noe å gjøre med brukerens passord som brukes medssh
):$ vncpasswd passord: Bekreft: Vil du oppgi et passord for bare visning (Y/N)? n
Vi trenger ikke å ha bare pålogginger i dette eksemplet. Neste rediger vi
/Hjem/testuser/.VNC/XSTARTUP
tekstfil med en tekstredigerer somNano
. Filen skal være tom etter installasjon, og vi vil bare legge til et minimalt innhold å startexterm
økt om tilkobling. Vi legger til følgende linje til den tomme filen:xterm -geometry 1044x810+10+10 &
Juster geometri -parametrene slik at den passer inn i skjermen. Nå kan vi starte serveren:
$ vncserver new 'rhel8beta.Lab: 1 (Testuser) 'Desktop er RHEL8beta.hjem.HU: 1 Startapplikasjoner spesifisert i/Home/Testuser/.VNC/XSTARTUP -loggfilen er/Home/Testuser/.VNC/RHEL8beta.Lab: 1.Logg
Som utdataene antyder, kan vi følge loggene levert av serveren i logfilene under
/hjem//.VNC/: 1.Logg
, Dette filnavnet vil endre seg hvis mer enn en VNC -servere kjører (det samme vil porten du trenger å koble til). Logfilen forteller også hvilken port serveren lytter på:
VNCEXT: Lytter etter VNC -tilkoblinger på alle grensesnitt (er), port 5901
Som er standard VNC -port.
- Vi kan bruke mange VNC -klienter for å koble til den nå startet serveren.
Remmina
er en klient som er sendt med nyere GNOME -stasjonære maskiner som standard, og kan håndtere SSH, RDP og VNC -økter. Vi må oppgi vertsnavnet eller IP -adressen til verten som kjører VNC -serveren, samt porten. Eksemplet nedenfor bruker192.168.1.14
som adresse, og standardport5901
Vi fant i loggfilen til serveren i forrige trinn. Vi må velge "VNC" som protokoll ved siden av adressefeltet, og skrive inn passordet vi spesifiserte medvncpasswd
Tidligere. Koble til Tigervnc med Remmina
Hvis alt fungerer som forventet, er vi koblet til VNC -serveren og kjører
Kjører topp uavbrutt eksterntxterm
, akseptere og gi utklippstavleinnhold, beskyttet mot nettverkssvikt. Detopp
Eksempel nedenfor vil kjøres uavbrutt hvis vi kobler fra økten og kobler på nytt senere. - Selv om disse trinnene i utgangspunktet viser hvordan du konfigurerer VNC -serveren og kobler til den, gir det ikke mye mening å kjøre
topp
på en fjernkontrollxterm
økt, som vi kunne gjøre det med mye mindre krefter med SSH, og en øktserver somskjerm
. For å se kraften i et så enkelt XTERM -oppsett, skriver du ganske enkeltgedit
På den eksterne XTERM -konsollen (forutsatt at et GNOME -skrivebord er installert).
Et tomt dokument dukker opp i GEDIT, akkurat som ethvert grafisk program ville når startet fra kommandolinjen. Merk at dokumentet som blir redigert eksternt, og programmet som holder det åpent er også beskyttet av VNC -økten. Et nettverksbrudd vil ikke påvirke det, vi kan ganske enkelt koble til igjen og fortsette å jobbe med teksten, selv om klientmaskinen vår opplever uopprettelig feil, og vi glemte å spare arbeidet vårt de siste timene. Naturligvis vil ikke VNC -serveren beskytte mot feilen i maskinen den kjører på.
Feilsøking
Hvis du får en "Connection nektet" feil, er det mest sannsynlig et problem med brannmurinnstillingene dine. Forsikre deg om at du har konfigurert tilgang for VNC med følgende kommandoer:
# Firewall-CMD-Permanent-Zone = public-Legg til tjeneste VNC-Server # Firewall-CMD-Reload
Ellers kan det være en enhet mellom de to systemene som blokkerer tilkoblingen, eller bare et rutingsproblem med nettverket.
Hvis du prøver å koble deg til VNC -serveren og ender opp med bare en svart skjerm, er det sannsynlig fordi det ikke er noen Window Manager for VNC. I instruksjonene ovenfor viser vi hvordan du konfigurerer xterm
for dette formålet. Du kan også bruke en fullverdig vindusleder som GNOME eller XFCE, men du må angi noe. Forsikre deg om at XTERM er konfigurert som VNC Window Manager per instruksjonene ovenfor.