Bernhard Häussner

VNC mit openSUSE oder Debian Linux (Howto)

22.10.2009, 09:13

Die Verwendungsmöglichkeiten einer Remote-Desktop-Lösung reichen von Fernadministration bis Support. VNC erlaubt den Fernzugriff auf graphische Benutzeroberflächen. Eine Kurzanleitung zur Installation von VNC-Server und -Client unter openSUSE und/oder Debian:

Server

Zunächst benötigt man auf dem Server (der Computer dessen Bildschirm übertragen werden soll) einen VNC-Server, wie z.B. x11vnc:

sudo zypper install x11vnc
#oder Debian:
sudo aptitude install x11vnc

Als nächstes legt man eine Passwort-Datei an, in der das Passwort für den Fernzugriff gespeichert wird:

mkdir ~/.vnc
x11vnc -storepasswd ~/.vnc/passwd
#(fragt nach einem neuen Passowrt)
chmod 0600 ~/.vnc/passwd

Da die Firewall den benutzen Port 5900 blockieren sollte, wird das Passwort nur gebraucht, da sich nicht jeder Benutzer des Server-Computers in den Desktop einklinken können soll. Nun könnte auf dem Server schon der VNC-Server gestartet werden, doch das mache ich dann vom Client:

Client

Zunächst stellen wir sicher, dass es ein VNC-Client installiert ist:

sudo zypper install tightvnc
#oder Debian:
sudo aptitude install xtightvncviewer

Da die Verbindung sicher sein soll und Firewalls umgehen soll, wird das ganze über SSH getunnelt (Mehr zum SSH-Tunnel am Beispiel MySQL), und der Server gleich mit gestartet, durch dieses kleine Script: (Es setzt eine konfigurierte OpenSSH Public Key Authentication voraus)

#!/bin/bash
SSHLOGIN=user@vncserver
ssh -L 5900:localhost:5900 $SSHLOGIN "x11vnc -localhost -display :0 -rfbauth ~/.vnc/passwd" &
sleep 3
vncviewer localhost

Optional kann man auch die SSH-Option -C angeben, die bei Netzwerkverbindungen mit geringer Bandbreite (Internet) die Daten komprimiert und somit alles schneller läuft. Theoretisch.

Arbeitet man auf verschiedenen remote Desktops kann man $SSHLOGIN durch $1 ersetzen und dann das Script mit der passenden User/Server-Kombination für SSH starten.

Das Script verlangt die Eingabe des des oben gesetzten VNC-Passworts, dann müsste der Remote Desktop zu sehen sein.

Kurze URL http://1-co.de/b/1P. Post to twitter

Kommentare

Chris meint: (#197)
22.10.2009, 14:57

Wer braucht denn VNC, wenns SSH gibt :-P

Bernhard H. meint: (#198)
22.10.2009, 18:37

Genau das habe ich bisher auch gedacht!

Aber denn hatte ich das torrent-GUI am laufen (wie man im Screenshot sieht), und keine Lust ständig zum Server zu rennen. Und torrent mit ncurses muss ja auch nicht gerade sein; Blender ist auch recht nervig über die CLI.

Für die Alltagsdinge hingegen ist ssh immer noch schneller.

Luca meint: (#215)
27.12.2009, 19:35

Ich hab immer einen VNC-Listener laufen, damit ich Fernwartung per Single-Click-Programm bei Kunden machen kann. Die haben nämlich unterschiedliche Betriebssysteme und SSH geht manchmal auch nicht durch die Firewall.

Ich meint: (#226)
04.06.2010, 13:47

Geht unter Ubuntu viel einfacher, weil es komplett über die GUI verwaltet werden kann.

Bernhard H. meint: (#229)
05.06.2010, 16:55

Nein. ;)

Das von Ubuntu verwendete "vino" gibt es auch in der Gnome-Version von OpenSUSE. Auch unter KDE4 gibt es ein GUI namens "krfb". Die GUI-Verwaltung ist somit nichts Ubuntu-Spezifisches.

Siehe auch: Informationen zu VNC unter Ubuntu http://wiki.ubuntuusers.de/VNC

Allerdings ist hier "komplett" nicht ganz richtig: Die Konfiguration der Firewall und des Routers muss zusätzlich vorgenommen werden.
Hier setzt die, in diesem Blogeintrag gezeigte, sichere & einfache Alternative ein: Den VNC-Traffic mit SSH zu tunneln. Auch dafür haben GUI-Fans mindestens einen Gnome- und einen KDE SSH Tunnel Manager geschrieben.

Jedoch sind viele Linux-User ohnehin Kommandozeilen-erprobt, das zeigt z.B. der - zugegeben etwas ironische - Kommentar von Chris oben. Diesen ergeht es wohl ähnlich wie mir: Das Installieren und Durschauen solcher GUIs wird nicht als einfacher empfunden. Lieber arbeitet man mit bekannten CLI-Methoden. Sogar im oben verlinkten Wiki-Artikel von ubuntuusers.de wird der Prozess mit SSH usw. ohne Verwendung von GUIs beschrieben.






 
Χρόνογραφ
© 2008-2017 by Bernhard Häussner - Impressum - Login
Kurz-Link zu dieser Seite: http://1-co.de/b/1P