VNC-Umleitung

Wer sich übers Netz auf einen Linuxrechner einloggt und Programme mit graphischer Benutzeroberfläche (etwa kprinter) benutzen will, braucht eine Bildschirmumleitung. Von einem Linuxrechner aus kann man einfach ssh -X benutzen, dann sollten graphische Programme sich normal starten lassen.

Beim Einloggen von einem Windows-Rechner aus kann man sich so helfen:

VNC-Server starten

Auf dem Server startet man einen neuen X-Server mit

vncserver -query localhost

Dies liefert eine Meldung der Form

New 'X' desktop is host:1

oder ähnlich, wobei die "1" die Nummer des X-Servers ist, sie kann sich ändern. Diese sollte man sich merken. Oft ist es sinnvoll, die Größe des umgeleiteten Bildschirms zu verkleinern indem man etwa verwendet

vncserver -query localhost -geometry 800x600

Außerdem kann man mit der Option -once den Server anweisen, nur für eine einzige Sitzung zu laufen und sich danach automatisch zu beenden. Beim ersten Aufruf von vncserver wird man nach einem Passwort gefragt. Dies braucht man später, um auf den Server zugreifen zu können. Es muss nicht das User-Passwort sein. Um das Paßwort zu ändern, löscht man die Datei

~/.vnc/passwd

Dann muss man beim nächsten Start ein neues eingeben.

SSH-Tunnel aufbauen

Auf dem Windows-client startet man eine SSH-Verbindung zum Server mit PuTTY, also PuTTY starten, Host und Port 22 wählen. Zusätzlich müssen zwei ports getunnelt werden. Das geht so:

  • Links im Menü "Connection/SSH/Tunnels" wählen.
  • Source port: 5801
  • Destination: rechner.math.tu-clausthal.de:5801
  • eingeben und Add klicken, danach das gleiche mit 5901.
  • <it>Die letzte Ziffer muß der Nummer des X-Servers (siehe oben) entsprechen!</it>
  • "Open" wählen und mit Kennung und Paßwort einloggen.

Ansicht im Browser

WWW-Browser starten und als URL

http://localhost:5801

verwenden (letzte Ziffer wieder anpassen). Es läuft eine Java-Anzeige der Bildschirmumleitung. Der Bildinhalt wird jeweils als JPEG übertragen, deswegen nicht besonders schnell. Innerhalb des Matheinstituts reicht das zwar für die meisten Programme, dauerhaft arbeiten will man damit aber wahrscheinlich nicht.

Ansicht mit Viewer

Hier verwendet man am besten TightVNC. Steht der SSH-Tunnel, so startet man das Programm einfach und gibt ihm die Displaynummer des VNC-Servers (siehe oben, etwa localhost:1) an. Nun kann man ggf. noch die Optionen anpassen, insbesondere hinsichtlich Kompression der Daten. Danach fragt der Viewer nur noch nach dem auf dem Server hinterlegten VNC-Paßwort, und schon geht's los. 

Beenden

  • client: Browser/viewer beenden
  • server: vncserver beenden mit
    vncserver -kill :1
  • (entfällt bei Option -once)
  • client: SSH-Verbindung/PuTTY beenden.