[[oktatas:linux:távoli elérés|< Távoli elérés]]
====== VNC ======
* **Szerző:** Sallai András
* Copyright (c) Sallai András, 2011, 2012, 2013, 2015, 2016, 2017, 2018, 2019
* [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]]
* Web: http://szit.hu
===== A VNC =====
A VNC a **Virtual Network Computing** rövidítése. Grafikus asztalmegosztó rendszer.
A VNC továbbítja a grafikus kijelző frissítéseit, a billentyűzet és az egér eseményeket.
===== VNC szerver =====
apt install tightvncserver
A felhasználó beállít egy jelszót az eléréshez:
vncpasswd
Using password file /home/joe/.vnc/passwd
Password:
Warning: password truncated to the length of 8.
Verify:
Would you like to enter a view-only password (y/n)? n
Elindítjuk a szervert elsőként:
vncserver
You will require a password to access your desktops.
Password:
Verify:
Would you like to enter a view-only password (y/n)? n
New 'X' desktop is servername:1
Creating default startup script /home/janos/.vnc/xstartup
Starting applications specified in /home/janos/.vnc/xstartup
Log file is /home/joe/.vnc/servername:1.log
Ez létrehoz egy jelszót a szerver számára.
Most állítsuk le a szervert.
vncserver -kill :1
Most nevezzük át az eredeti xstartup fájlt:
mv ~/.vnc/xstartup ~/.vnc/xstartup.eredeti
Most készítsünk egy újat:
nano ~/.vnc/xstartup
Tartalma a következő legyen:
#!/bin/bash
xrdb $HOME/.Xresources
startlxde &
A startlxde helyére természetesen írhatjuk saját GUI környezetünket.
Adjuk a scriptre futtatási jogot:
chmod +x ~/.vnc/xstartup
Indítsuk el újra a szervert:
vncserver
===== Kapcsolódás egy VNC szerverhez =====
apt install xtightvncviewer
xtightvncviewer 192.168.10.11:1
Kapcsolódhatunk a VNC port megadásával:
192.168.10.11:5900
==== SSH alagút készítése ====
ssh -L 5901:localhost:5901 -t -l janos 192.168.10.11
vagy:
ssh -L 5901:localhost:5901 -C -N -l janos 192.168.10.11
Ezek után kapcsolat:
xtightvncviewer localhost:5901
===== x11vnc =====
Az x11vnc lehetővé teszi az aktuális asztal megtekintését/vezérlését, szemben a
többi VNC megvalósítással.
==== Telepítés ====
# apt install x11vnc
==== Jelszó beállítása ====
$ x11vnc -storepasswd
Enter VNC password:
Verify password:
Write password to /home/janos/.vnc/passwd? [y]/n y
Password written to: /home/janos/.vnc/passwd
==== Szerver indítása ====
$ x11vnc
Esetleg:
$ x11vnc -clip 1920x1080+1920+0
==== Kliens ====
Használhatunk bármilyen VNC klienst. Például TightVNC:
$ xtightvncviewer 192.168.10.11:5900
==== Szerver azonosítással ====
Megadható a jelszófájl útvonala:
x11vnc -rfbauth ~/.vnc/passwd
Esetleg így:
x11vnc -rfbauth /home/janos/.vnc/passwd
==== Több kapcsolat elfogadása ====
x11vnc -forever -bg
==== Kapcsolók ====
| -forever | Várjon több kapcsolatra is, ne csak az elsőre |
| -bg | A képernyő beállítása után a háttérbe. |
| -rfbauth /útvonal/jelszófájlhoz | |
| -allow host1[, host2..] | Csak adott kliensek kapcsolódhatnak. |
| -unixpw [lista] | Unix azonosítás, felhasználónév és jelszó. \\ A lista opcionális, vesszővel tagolt engedélyezett felhasználók. |
| -passwd jelszó | azonosítás plain-text jelszóval |
| -geometry FxV | függőleges és vízszintes geometria |
| -viewonly | A kliens csak nézhet |
==== systemd szolgáltatás létrehozása ====
cp ~/.vnc/passwd /etc/vnc.passwd
chmod 600 /etc/vnc.passwd
nano /etc/systemd/system/x11vnc.service
[Unit]
Description=x11vnc szerver
After=multi-user.target
[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /etc/vnc.passwd -rfbport 5900 -shared
ExecStop=/usr/bin/x11vnc -R stop
Restart=on-failure
RestartSec=2
[Install]
WantedBy=multi-user.target
systemctl enable vnc.service
systemctl daemon-reload
Esetleg lehet egy ilyen sor:
ExecStart=/usr/bin/x11vnc -display :0 -rfbauth /etc/x11vnc.pwd -shared -forever -o /var/log/x11vnc.log
systemctl start x11vnc
==== Indítás SSH-án ====
ssh -t -l janos -L 5900:localhost:5900 192.168.5.102 'x11vnc -localhost -display :0'
Kapcsolódás:
xtightvncviewer localhost:5900
===== Témához kapcsolódó csomagok =====
* tightvncserver - VNC szerver
* xtightvncviewer - VNC kliens
* directvnc - VNC kliens, a framebuffer-t használja megjelenítőnek
* gnome-rdp - Távoliasztal kliens GNOME számára
* gvncviewer - VNC viewer, amely a gtk-vnc programot használja
* gtkvncviewer - Kicsi GNOME alapú VNC kliens
* remmina - Távoliasztal kliens GNOME számára
* tsclient - Távoli asztal kliens GNOME-hoz (front-end)
* vinagre - Távoli asztal kliens GNOME-hoz
* vnc4server - VNC szerver
* xvnc4viewer - VNC kliens
* xrdp - Remote Desktop Protocol (RDP) szerver
* rdesktop - Windows elérése
* krfb - A KDE VNC szervere; bármely VNC klienssel kapcsolódhatunk
* x11vnc - X és parancssoros VNC szerver; sok kapcsoló: man x11vnc
* epoptes - számítógépes laboratórium megfigyelő, vezérlő