VNC
Datum: 10. 7. 2020
Kategorie: Open-source
Jak zprovoznit VNC server na pracovních stanicích Linux/Unix a jaký software použít?
Obsah:
X11VNC
Pro instalaci slouží balíček x11vnc.
Server
Pro otestování VNC serveru stačí spustit jako uživatel příkaz x11vnc, který spustí server. Výchozí port naslouchání je 5900.
x11vnc
Heslo nastavíme pomocí parametru -storepasswd:
x11vnc -storepasswd
Pro spouštění s heslem skrze .xinitrc a podobné budeme spouštět VNC server s parametry:
x11vnc -xkb -noxrecord -noxfixes -noxdamage -display :0 -auth /home/uzivatel/.Xauthority -forever -bg -o /var/log/x11vnc.log -rfbauth /home/uzivatel/.vnc/passwd -rfbport 5900 &
Atributy
- -o /var/log/x11vnc.log Vybere umístění logu.
- -auth /home/uzivatel/.Xauthority Vybere oprávnění pro displej.
- -rfbauth /home/uzivatel/.vnc/passwd Vybere ověření heslem a s cestou k heslu.
- -rfbport 5900 Vybere použitý port.
- -forever Poslouchá donekonečna namísto odpojení po prvním připojení.
- -inetd Spustí se pomocí inetd.
- -modtweak Zkusí nastavit AltGr a Shift zkratky pro rozdílné jazyky.
- -nomodtweak Použije se při potížích s modtweak.
- -xkb Když je aktivní modtweak, použije rozšíření XKEYBOARD.
- -noxfixes Nepoužívat XFIXES rozšíření k vykreslení kurzoru.
- -noxrecord Vypne jakékoli rozšíření pro narhávání relace.
Skript pro spouštění přes crontab
- Vytvoříme soubor autovnc.sh v domovském adresáři uživatele: nano /home/uzivatel/autovnc.sh
- Soubor autovnc.sh naplníme obsahem:
#!/bin/bash x11vnc -xkb -noxrecord -noxfixes -noxdamage -display :0 -auth /home/uzivatel/.Xauthority -forever -bg -o /var/log/x11vnc.log -rfbauth /home/uzivatel/.vnc/passwd -rfbport 5900
- Uděláme soubor spustitelným: chmod 777 autovnc.sh
- Přidáme skript do crontab: crontab -e*/20 * * * * /home/uzivatel/autovnc.sh
Klient
Pro spuštění VPN klienta je potřeba zainstalovat balíček tigervnc. Název balíčku se může v jednotlivých distribucích lišit.
Pro otestování na aktuálním počítači se můžeme zkusit připojit s adresou localhost:
vncviewer localhost
Pro připojení k adrese 192.168.1.100 stačí použít příkaz:
vncviewer 192.168.1.100
Tipy
- Když VNC padá po přihlášení: Je třeba odstranit soubor .Xauthority pomocí rm /home/uzivatel/.Xauthority
- Ukončení x11vnc killall x11vnc
- Zastavení x11vnc -R stop
- Jak vyčistit x11vnc? x11vnc -clear-all
Testováno na
- CentOS
- FreeBSD
- OpenSUSE
- Arch Linux
Další VNC
Alpine Linux | apk add x11vnc |
Arch Linux | pacman -S tigervnc |
CentOS | dnf install tigervnc-server |
FreeBSD | pkg install tigervnc-server |
OpenSUSE | zypper in xorg-x11-Xvnc |
Ubuntu/Debian | apt install tightvncserver |
Pro spuštění VNC serveru poslouží jednoduchý příklad:
vncserver
anebo
vncserver :1 -alwaysshared -dpi 100