Android

Hoe vnc op centos 7 te installeren en configureren

Install & Configure TIGER VNC Server in CentOS 7 and RHEL 7

Install & Configure TIGER VNC Server in CentOS 7 and RHEL 7

Inhoudsopgave:

Anonim

In deze tutorial zullen we u door de stappen leiden voor het installeren en configureren van een VNC-server op een CentOS 7-systeem. We laten u ook zien hoe u veilig verbinding kunt maken met de VNC-server via een SSH-tunnel.

Virtual Network Computing (VNC) is een grafisch systeem voor het delen van desktops waarmee u uw toetsenbord en muis kunt gebruiken om op afstand een andere computer te bedienen.

voorwaarden

Zorg ervoor dat u bent aangemeld als een gebruiker met sudo-rechten voordat u doorgaat met de zelfstudie. We gaan ervan uit dat u bent ingelogd als een gebruiker met de naam linuxize .

Xfce Desktop Environment installeren

CentOS-serverinstallaties worden vaak niet geleverd met een geïnstalleerde desktopomgeving, dus beginnen we met het installeren van een lichtgewicht desktopomgeving.

In deze gids zullen we Xfce installeren. Het is een snelle, stabiele en weinig systeembronnen, waardoor het ideaal is voor gebruik op externe servers.

Xfce-pakketten zijn beschikbaar in de EPEL-opslagplaatsen. Als EPEL-repository niet op uw server is ingeschakeld, kunt u dit doen door te typen:

sudo yum install epel-release

Nadat de repository is toegevoegd, installeert u Xfce op uw CentOS met:

sudo yum groupinstall xfce

Afhankelijk van uw systeem kan het downloaden en installeren van de Xfce-pakketten en afhankelijkheden enige tijd duren.

VNC Server installeren

We zullen TigerVNC gebruiken als onze VNC-server naar keuze. TigerVNC is een actief onderhouden krachtige open-source VNC-server.

Typ de volgende opdracht om TigerVNC op uw CentOS-server te installeren:

yum install tigervnc-server

Nu de VNC-server is geïnstalleerd, is de volgende stap het uitvoeren van de opdracht vncserver die de eerste configuratie maakt en het wachtwoord instelt. Gebruik sudo niet wanneer u de volgende opdracht uitvoert:

vncserver

U wordt gevraagd om het wachtwoord in te voeren en te bevestigen en of u het wilt instellen als alleen-bekijken wachtwoord. Als u ervoor kiest om een ​​wachtwoord voor alleen bekijken in te stellen, kan de gebruiker niet met de VNC-instantie communiceren met de muis en het toetsenbord.

You will require a password to access your desktops. Password: Verify: Would you like to enter a view-only password (y/n)? n /usr/bin/xauth: file /home/linuxize/.Xauthority does not exist New 'server2.linuxize.com:1 (linuxize)' desktop at:1 on machine server2.linuxize.com Starting applications specified in /etc/X11/Xvnc-session Log file is /home/linuxize/.vnc/server2.linuxize.com:1.log

De eerste keer dat de opdracht vncserver wordt uitgevoerd, wordt het wachtwoordbestand gemaakt en opgeslagen in de map ~/.vnc die wordt aangemaakt als deze niet aanwezig is.

Let op de :1 na de hostnaam in de bovenstaande output. Dit geeft het nummer van de weergavepoort aan waarop de vnc-server actief is. In ons geval draait de server op TCP-poort 5901 (5900 + 1). Als u een tweede exemplaar maakt met vncserver , wordt dit uitgevoerd op de volgende vrije poort, dat wil zeggen :2 dat betekent dat de server wordt uitgevoerd op poort 5902 (5900 + 2).

Wat belangrijk is om te onthouden, is dat bij het werken met VNC-servers :X een weergavepoort is die verwijst naar 5900+X

Voordat u doorgaat met de volgende stap, stopt u eerst het VNC-exemplaar met de opdracht vncserver met de optie -kill en het -kill als argument. In ons geval draait de server in poort 5901 ( :1 ), dus we stoppen ermee met:

vncserver -kill:1

Killing Xvnc process ID 2432

VNC-server configureren

Nu zowel Xfce als TigerVNC op onze CentOS-server zijn geïnstalleerd, is de volgende stap het configureren van TigerVNC voor het gebruik van Xfce. Open hiervoor het volgende bestand:

nano ~/.vnc/xstartup

En verander de laatste regel van exec /etc/X11/xinit/xinitrc naar exec startxfce4 :

~ /.Vnc / xstartup

#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4

Sla het bestand op en sluit het. Het bovenstaande script wordt automatisch uitgevoerd wanneer u de TigerVNC-server start of opnieuw start.

Hier is een voorbeeld:

~ /.Vnc / config

# securitytypes=vncauth, tlsvnc # desktop=sandbox geometry=1920x1080 # localhost # alwaysshared dpi=96

Een Systemd-eenheidsbestand maken

We zullen een systemd unit-bestand maken waarmee we de VNC-service eenvoudig kunnen starten, stoppen en opnieuw opstarten als nodig is, net als elke andere systemd-service.

Kopieer het vncserver-eenheidsbestand met de opdracht cp :

sudo cp /usr/lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service

Open het bestand met uw teksteditor en vervang het met uw daadwerkelijke gebruikersnaam.

sudo nano /etc/systemd/system/vncserver@\:1.service /etc/systemd/system/vncserver@:1.service

Description=Remote desktop service (VNC) After=syslog.target network.target Type=forking # Clean any existing files in /tmp/.X11-unix environment ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 ||:' ExecStart=/usr/sbin/runuser -l linuxize -c "/usr/bin/vncserver %i" PIDFile=/home/linuxize/.vnc/%H%i.pid ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 ||:' WantedBy=multi-user.target

Sla het bestand op en sluit het. Laat systemd weten dat we een nieuw eenheidsbestand hebben gemaakt met:

sudo systemctl daemon-reload

De volgende stap is het inschakelen van het eenheidsbestand met de volgende opdracht:

sudo systemctl enable vncserver@:1.service

Het cijfer 1 achter het @ -teken definieert de weergavepoort waarop de VNC-service wordt uitgevoerd. In ons geval is dit de standaard 1 en VNC-server luistert op poort 5901 zoals we in de vorige sectie hebben besproken.

Start de VNC-service door het uitvoeren van:

sudo systemctl start vncserver@:1.service

Controleer of de service met succes is gestart met:

sudo systemctl status vncserver@:1.service

● vncserver@:1.service - Remote desktop service (VNC) Loaded: loaded (/etc/systemd/system/vncserver@:1.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2018-09-16 09:59:53 UTC; 4s ago Process: 6391 ExecStart=/usr/sbin/runuser -l linuxize -c /usr/bin/vncserver %i (code=exited, status=0/SUCCESS) Process: 6389 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 ||: (code=exited, status=0/SUCCESS) Main PID: 6413 (Xvnc) CGroup: /system.slice/system-vncserver.slice/vncserver@:1.service ‣ 6413 /usr/bin/Xvnc:1 -auth /home/linuxize/.Xauthority -desktop server2.linuxize.com:1 (linuxize) -fp catalogue:/etc/X11/fontpath.d -geometry 1024x768 -pn -rfbauth /home/linuxize/.vnc/passwd -rfbport…

Verbinding maken met VNC-server

VNC is geen gecodeerd protocol en kan worden onderworpen aan pakket snuiven. De aanbevolen aanpak is om een ​​SSH-tunnel te maken die verkeer van uw lokale machine op poort 5901 veilig doorstuurt naar de server op dezelfde poort.

SSH-tunneling instellen op Linux en macOS

ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address

U wordt gevraagd het gebruikerswachtwoord in te voeren.

Vergeet niet uw username en server_ip_address te vervangen door uw gebruikersnaam en het IP-adres van uw server.

SSH-tunneling instellen op Windows

Open Putty en voer het IP-adres van uw server in het veld Host name or IP address in.

U kunt nu beginnen met de interactie met het externe XFCE-bureaublad vanaf uw lokale computer met behulp van uw toetsenbord en muis.

Conclusie

U zou nu een VNC-server moeten hebben en u kunt uw CentOS 7-server eenvoudig beheren via een grafische interface.

Als u uw VNC-server wilt configureren om een ​​weergave voor meer dan één gebruiker te starten, maakt u de eerste configuratie en stelt u het wachtwoord in met de opdracht vncserver en maakt u een nieuw servicebestand met een andere poort.

Als je nog vragen hebt, kun je een reactie achterlaten.

centos vnc