VNC (Virtual Network Computing)

VNC (Virtual Network Computing) gör det möjligt att transportera grafiska användargränssnitt över ett nätverk. Jag vill ha ett "riktigt X-gränssnitt" (ett som hör till en fysisk skärm, tangentbord och mus) så jag använder x11vnc som server (på hakan=192.168.100.2) och TightVNC som klient (på zenita=192.168.100.4). Här kan du se mitt Nätverk.

Laddar ner och installerar på "hakan".. 
(http://www.linuxpackages.net/pkg_details.php?id=8481 x11vnc-0.8-i486-1kjz.tgz)

(Finns i nyare versioner för Slackware-13.37 och senare http://pkgs.org/search/x11vnc /le)

Hemsida: http://www.karlrunge.com/x11vnc/
Det här är en "lång sida", men absolut nödvändig att läsa igenom, det finns massor av bra exempel.

..och på "zenita"..
(http://www.linuxpackages.net/pkg_details.php?id=8599 tightvnc-1.3dev7-i486-1kjz.tgz)

(Finns i nyare versioner för Slackware-13.37 och senare http://pkgs.org/search/tightvnc /le)

Hemsida: http://www.tightvnc.org/index.html

(Beroende på Slackware-version finns numera alternativa, ev elegantare, lösningar i distributionen ftp://ftp.slackware.no/pub/linux/slackware/ eller hos http://slackbuilds.org/: Som tightvncserver, vncviewer, ssvnc et c. /le)


Server (hakan)

Då provar jag, kom ihåg att nu är det utan någon som helst "säkerhet", bara för att testa alltså, -forever menas att x11vnc inte stängs ner när vncviewer-sessionen stängs. Jag måste öppna port 5900 i min Brandvägg

hakan@hakan:~$ x11vnc -forever
..bla, bla..
25/02/2006 16:44:15 The VNC desktop is hakan:0
PORT=5900
..jag stänger x11vnc med ctrl+c

Säkerhet

Sätt ett "lösen" för x11vnc, skapa en katalog .vnc (dold) i "hemkatalogen"
hakan@hakan:~$ mkdir .vnc

..sedan "lösen".. 
hakan@hakan:~$ x11vnc -storepasswd lösenord /home/hakan/.vnc/pwfil
stored passwd in file /home/hakan/.vnc/pwfil

..då startar vi..
hakan@hakan:~$ x11vnc -rfbauth /home/hakan/.vnc/pwfil


Laptop (zenita)

titus@zenita:~$ vncviewer hakan:0
Connected to RFB server, using protocol version 3.7
Enabling TightVNC protocol extensions
No authentication needed
Desktop name "hakan:0.0"
VNC server default format:
  16 bits per pixel.
  Least significant byte first in each pixel.
  True colour: max red 31 green 63 blue 31, shift red 11 green 5 blue 0
Using default colormap which is TrueColor.  Pixel format:
  32 bits per pixel.
  Least significant byte first in each pixel.
  True colour: max red 255 green 255 blue 255, shift red 16 green 8 blue 0
Using shared memory PutImage

bild
..Fungerar! Bilden är lite för stor men det fixas med -scale värde ex.v. 2/3, som du kan se på nästa bild. Jag stänger med ctrl+c.eller "klickar på fönsterkrysset"
CleanupSignalHandler called
ShmCleanup called

Säkerhet

Nu har vi ett "lösen" på x11vnc, då blir det..
titus@zenita:~$ vncviewer hakan:0
Connected to RFB server, using protocol version 3.7
Enabling TightVNC protocol extensions
Performing standard VNC authentication
Password:lösenord
VNC authentication succeeded
Desktop name "hakan:0.0"
VNC server default format:
  16 bits per pixel.
  Least significant byte first in each pixel.
  True colour: max red 31 green 63 blue 31, shift red 11 green 5 blue 0
Using default colormap which is TrueColor.  Pixel format:
  32 bits per pixel.
  Least significant byte first in each pixel.
  True colour: max red 255 green 255 blue 255, shift red 16 green 8 blue 0
Using shared memory PutImage
..fungerar bra, till sist visar jag hur jag kör allt via ssh.

Tunnelling x11vnc via ssh

Nu gör vi allt från laptopen (zenita), 
-l = användare på "servern"
-L = binder till port 5900
-localhost = "vncviewer" bara från "localhost" (zenita)
-scale = anpassar "fönstrets" storlek
titus@zenita:~$ ssh -l hakan -L 5900:localhost:5900 hakan 'x11vnc -rfbauth /home/hakan/.vnc/pwfil -localhost -display :0 -scale 2/3'
Enter passphrase for key '/home/titus/.ssh/id_dsa':lösenord
28/02/2006 18:36:44 passing arg to libvncserver: -rfbauth
28/02/2006 18:36:44 passing arg to libvncserver: /home/hakan/.vnc/pwfil
..bla,bla..
28/02/2006 18:36:44 The VNC desktop is localhost:0
PORT=5900

..nu från en ny terminal..
titus@zenita:~$ vncviewer -encodings "copyrect tight hextile" localhost:0
Connected to RFB server, using protocol version 3.7
Enabling TightVNC protocol extensions
Performing standard VNC authentication
Password:lösenord
VNC authentication succeeded
Desktop name "hakan:0"
VNC server default format:
  16 bits per pixel.
  Least significant byte first in each pixel.
  True colour: max red 31 green 63 blue 31, shift red 11 green 5 blue 0
Using default colormap which is TrueColor.  Pixel format:
  32 bits per pixel.
  Least significant byte first in each pixel.
  True colour: max red 255 green 255 blue 255, shift red 16 green 8 blue 0
Using shared memory PutImage

bild
Bra, då gör jag en ~/.x11vncrc till "servern" (/home/hakan/.x11vncrc)..

# Det här är min konfigurationsfil för x11vnc
# när den ska startas via ssh.
display	:0
rfbauth	/home/hakan/.vnc/pwfil
scale	2/3
localhost

..så kan jag starta med..
titus@zenita:~$ ssh -l hakan -L 5900:localhost:5900 hakan x11vnc

..beroende på hur man vill använda x11vnc så finns det "hur många som helst" olika inställningar man kan skriva i sin konfig-fil, titta här (eller $ x11vnc -opts, $ x11vnc -help, $ man x11vnc)..
http://www.karlrunge.com/x11vnc/x11vnc_opts.html

Valid XHTML 1.0 Transitional