VNC je zkratka pro „Virtual Network Computing“ je aplikace pro sdílení pracovní plochy s grafickým uživatelským rozhraním, kterou lze použít k přístupu a ovládání jiných počítačů přes síť. Využívá protokol Remote Frame Buffer a pracuje na modelu klient/server. Obecně jej používají pracovníci technické podpory ke vzdálené správě a odstraňování problémů s počítači, servery a dalšími síťovými zařízeními.
V tomto tutoriálu vám ukážeme, jak nainstalovat VNC server na CentOS 8.
Předpoklady
- Systém s operačním systémem CentOS 8 Desktop.
- Na vašem serveru je nakonfigurováno heslo uživatele root.
Začínáme
Ve výchozím nastavení je SELinux povolen v operačním systému CentOS 8 a server VNC nebude správně fungovat, pokud je povolen SELinux. Takže je dobré zakázat SELinux ve vašem systému. Můžete jej zakázat úpravou následujícího souboru:
nano /etc/sysconfig/selinux
Najděte následující řádek:
SELINUX=enforcing
A nahraďte jej následujícím řádkem:
SELINUX=disabled
Po dokončení uložte a zavřete soubor. Poté restartujte systém, aby se změny implementovaly.
Instalovat VNC Server
Ve výchozím nastavení je TigerVNC k dispozici ve výchozím úložišti CentOS 8. Můžete jej nainstalovat spuštěním následujícího příkazu:
dnf install tigervnc-server tigervnc-server-module -y
Po dokončení instalace můžete přejít k dalšímu kroku.
Vytvořit nového uživatele a nastavit heslo VNS
Dále budete muset vytvořit nového uživatele pro relaci vzdálené plochy VNC. Můžete vytvořit nového uživatele s názvem hitesh, jak je uvedeno níže:
useradd hitesh
Dále nastavte heslo pro tohoto uživatele pomocí následujícího příkazu:
passwd hitesh
Dále přepněte uživatele na hitesh a nastavte heslo VNC pro tohoto uživatele pomocí následujícího příkazu:
su - hitesh
vncpasswd
Zadejte požadované heslo a stisknutím klávesy Enter vytvořte heslo, jak je uvedeno níže:
Password: Verify: Would you like to enter a view-only password (y/n)? n A view-only password is not used
Dále opusťte uživatele hitesh pomocí následujícího příkazu:
exit
Vytvořit soubor Systemd Service pro VNC
Dále budete muset vytvořit servisní soubor systemd pro VNC. Můžete jej vytvořit pomocí následujícího příkazu:
nano /etc/systemd/system/[email protected]
Přidejte následující řádky:
[Unit] Description=Remote Desktop VNC Service After=syslog.target network.target [Service] Type=forking WorkingDirectory=/home/hitesh User=hitesh Group=hitesh 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
Po dokončení uložte a zavřete soubor. Poté znovu načtěte démona systemd pomocí následujícího příkazu:
systemctl daemon-reload
Dále spusťte službu VNC na displeji 1 a povolte spuštění po restartu systému pomocí následujícího příkazu:
systemctl start [email protected]:1.service
systemctl enable [email protected]:1.service
Nyní můžete zkontrolovat stav služby VNC pomocí následujícího příkazu:
systemctl status [email protected]:1.service
Měli byste získat následující výstup:
? [email protected]:1.service - Remote Desktop VNC Service Loaded: loaded (/etc/systemd/system/[email protected]; disabled; vendor preset: disabled) Active: active (running) since Fri 2020-03-06 03:45:50 EST; 45s ago Process: 2196 ExecStart=/usr/bin/vncserver -autokill :1 (code=exited, status=0/SUCCESS) Process: 2190 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill :1 > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS) Tasks: 180 (limit: 12537) Memory: 347.3M CGroup: /system.slice/system-vncserver.slice/[email protected]:1.service ??2203 /usr/bin/Xvnc :1 -auth /home/hitesh/.Xauthority -desktop centos8:1 (hitesh) -fp catalogue:/etc/X11/fontpath.d -geometry 1024> ??2210 sh -c (/home/hitesh/.vnc/xstartup; /usr/bin/vncserver -kill :1) >> '/home/hitesh/.vnc/centos8:1.log' 2>&1 & ??2211 /bin/sh /home/hitesh/.vnc/xstartup ??2212 /usr/libexec/gnome-session-binary ??2221 dbus-launch --sh-syntax --exit-with-session ??2222 /usr/bin/dbus-daemon --syslog --fork --print-pid 6 --print-address 8 --session ??2230 /usr/bin/ssh-agent /etc/X11/xinit/Xclients ??2246 /usr/libexec/at-spi-bus-launcher ??2251 /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 3 ??2253 /usr/libexec/at-spi2-registryd --use-gnome-session ??2257 /usr/libexec/gvfsd ??2264 /usr/libexec/gvfsd-fuse /home/hitesh/.gvfs -f -o big_writes ??2292 /usr/bin/gnome-keyring-daemon --start --components=secrets ??2336 /usr/libexec/gsd-power
VNC server je nyní spuštěn a naslouchá na portu 5901. Můžete to zkontrolovat pomocí následujícího příkazu:
netstat -tunlp | grep 5901
Měli byste získat následující výstup:
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 2203/Xvnc tcp6 0 0 :::5901 :::* LISTEN 2203/Xvnc
Přístup k serveru VNC
Server VNC je nyní nainstalován a nakonfigurován, je čas přistupovat k serveru VNC ze vzdáleného počítače.
Na počítači se systémem Windows/Linux otevřete aplikaci VNC Viewer a zadejte adresu svého serveru VNC, jak je uvedeno níže:
IP-vašeho-serveru:5901
Klikněte na tlačítko Pokračovat knoflík. Měli byste vidět následující obrazovku:
Zadejte své heslo VNC a klikněte na OK knoflík. Jakmile se připojíte, měli byste na následující obrazovce vidět plochu CentOS:
Závěr
Gratulujeme! úspěšně jste nainstalovali a nakonfigurovali VNC server na CentOS 8. Doufám, že vám to pomůže snadno spravovat vzdálené počítače přes síť.