AB Tutorials - VNC Server Configuration On Centos 7
Innehållsförteckning:
- förutsättningar
- Installera Xfce Desktop miljö
- Installera VNC-server
- Konfigurera VNC-server
- Skapa en systemd-enhetsfil
- Ansluter till VNC-server
- Ställ in SSH-tunnel på Linux och macOS
- Ställ in SSH-tunnel på Windows
- Slutsats
I den här tutorialen kommer vi att leda dig genom stegen för att installera och konfigurera en VNC-server på ett CentOS 7-system. Vi kommer också att visa dig hur du säkert kan ansluta till VNC-servern via en SSH-tunnel.
Virtual Network Computing (VNC) är ett grafiskt system för delning av skrivbord som gör att du kan använda ditt tangentbord och mus för att fjärrstyra en annan dator.
förutsättningar
Innan du fortsätter med självstudien, se till att du är inloggad som användare med sudo-behörigheter. Vi antar att du är inloggad som användare som heter
linuxize
.
Installera Xfce Desktop miljö
CentOS-serverinstallationer kommer ofta inte med en skrivbordsmiljö installerad, så vi börjar med att installera en lätt skrivbordsmiljö.
I den här guiden installerar vi Xfce. Det är en snabb, stabil och låg på systemresurser, vilket gör den idealisk för användning på fjärrservrar.
Xfce-paket finns tillgängliga i EPEL-lagringarna. Om du inte har EPEL-arkiv aktiverat på din server kan du göra det genom att skriva:
sudo yum install epel-release
När förvaret har lagts till installerar du Xfce på ditt CentOS med:
sudo yum groupinstall xfce
Beroende på ditt system kan nedladdning och installation av Xfce-paket och beroenden ta lite tid.
Installera VNC-server
Vi kommer att använda TigerVNC som vår valde VNC-server. TigerVNC är en aktivt underhållen högpresterande open source VNC-server.
Skriv följande kommando för att installera TigerVNC på din CentOS-server:
yum install tigervnc-server
Nu när VNC-servern är installerad är nästa steg att köra
vncserver
kommandot som skapar den initiala konfigurationen och konfigurerar lösenordet. Använd inte sudo när du kör följande kommando:
vncserver
Du blir ombedd att ange och bekräfta lösenordet och om du vill ställa in det som visningslösenord. Om du väljer att ställa in ett lösenord som bara är synligt kan användaren inte interagera med VNC-instansen med musen och tangentbordet.
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
Första gången
vncserver
kommandot körs kommer det att skapa och lagra lösenordsfilen i katalogen
~/.vnc
som skapas om den inte finns.
Notera
:1
efter värdnamnet i utgången ovan. Detta indikerar visningsportnumret som vnc-servern körs på. I vårt fall kör servern på TCP-port
5901
(5900 + 1). Om du skapar en andra instans med
vncserver
kommer den att köras på nästa gratisport, dvs
:2
vilket betyder att servern körs på port
5902
(5900 + 2).
Vad som är viktigt att komma ihåg är att när du arbetar med VNC-servrar
:X
är en visningsport som refererar till
5900+X
Innan du fortsätter med nästa steg, stoppa först VNC-instansen med kommandot
vncserver
med ett
-kill
alternativ och
-kill
som ett argument. I vårt fall kör servern i port 5901 (
:1
), så vi stoppar den med:
vncserver -kill:1
Konfigurera VNC-server
Nu när både Xfce och TigerVNC är installerade på vår CentOS-server är nästa steg att konfigurera TigerVNC att använda Xfce. För att göra det öppnar du följande fil:
nano ~/.vnc/xstartup
Och ändra den sista raden från
exec /etc/X11/xinit/xinitrc
till
exec startxfce4
:
#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4
Spara och stäng filen. Skriptet ovan kommer att köras automatiskt när du startar eller startar om TigerVNC-servern.
Här är ett exempel:
~ /.Vnc / config
# securitytypes=vncauth, tlsvnc # desktop=sandbox geometry=1920x1080 # localhost # alwaysshared dpi=96
Skapa en systemd-enhetsfil
Vi skapar en systemd-enhetsfil som gör att vi enkelt kan starta, stoppa och starta om VNC-tjänsten efter behov, samma som alla andra systemd-tjänster.
Kopiera vncserver-enhetsfilen med
cp
kommandot:
sudo cp /usr/lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service
Öppna filen med din textredigerare och ersätt den
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
Spara och stäng filen. Meddela systemd att vi skapade en ny enhetsfil med:
sudo systemctl daemon-reload
Nästa steg är att aktivera enhetsfilen med följande kommando:
sudo systemctl enable vncserver@:1.service
Siffran
1
efter
@
-tecknet definierar visningsporten som VNC-tjänsten ska köras på, i vårt fall är det standard
1
och VNC-servern lyssnar på port
5901
som vi diskuterade i föregående avsnitt.
Starta VNC-tjänsten genom att köra:
sudo systemctl start vncserver@:1.service
Kontrollera att tjänsten har startats med:
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…
Ansluter till VNC-server
VNC är inte ett krypterat protokoll och kan bli föremål för paket snifning. Det rekommenderade tillvägagångssättet är att skapa en SSH-tunnel som säkert kommer att vidarebefordra trafik från din lokala maskin på port 5901 till servern i samma port.
Ställ in SSH-tunnel på Linux och macOS
ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address
Du blir ombedd att ange användarlösenordet.
Glöm inte att byta ut
username
och
server_ip_address
med ditt användarnamn och din serverns IP-adress.
Ställ in SSH-tunnel på Windows
Öppna Kitt och ange din server IP-adress i fältet
Host name or IP address
.




Du kan nu börja interagera med fjärrskrivbordet XFCE från din lokala maskin med ditt tangentbord och mus.
Slutsats
Nu bör du ha en VNC-server igång och du kan enkelt hantera din CentOS 7-server med ett grafiskt gränssnitt.
För att konfigurera din VNC-server så att den startar en skärm för mer än en användare, skapar du den ursprungliga konfigurationen och konfigurerar lösenordet med
vncserver
kommandot och skapar en ny servicefil med en annan port.
Lämna gärna en kommentar om du har några frågor.
centos vncHur man installerar och konfigurerar en nfs-server på centos 8
I den här handledningen går du igenom stegen som krävs för att konfigurera en NFSv4-server på CentOS 8. Vi visar också hur du monterar ett NFS-filsystem på klienten.
Hur man installerar och konfigurerar vnc på debian 9
Denna handledning beskriver hur du installerar och konfigurerar VNC-server på ett Debian 9-system. Virtual Network Computing (VNC) är ett grafiskt system för delning av skrivbord som gör att du kan använda tangentbordet och musen för att fjärrstyra en annan dator.
Hur du installerar och konfigurerar vnc på ubuntu 18.04
Den här guiden behandlar de steg som krävs för att installera och konfigurera VNC-server på ett Ubuntu 18.04-system. Vi kommer också att visa dig hur du säkert kan ansluta till VNC-servern via en SSH-tunnel.







