VNC Server installieren und konfigurieren
In diesem Tutorial zeige ich euch wie man den VNC Server installieren und konfigurieren kann. Genauer gesagt geht es um den TightVNCServer, welcher recht weit verbreitet ist und in wenigen Schritten einsatzbereit ist. Mit einem VNC Server kann man von entfernt auf den Dektop des laufenden PC oder Server zugreifen.
VNC Server installieren und konfigurieren
Unter VNC (Virtual Networking Computing) versteht man Programme, die den Bildschirminhalt über das Netzwerk übertragen. Vereinfacht gesagt werden laufend Screenshots vom Server Desktop gemacht und über das Netzwerk verschickt. Im Gegenzug dazu werden Mausbewegung und Tastaturaktionen vom Client an den Server geschickt. Die meisten VNC Programme erlauben eine Konfiguration in der man Bildschirmgröße, Farbtiefe und Frequenz der Updates einstellen kann.
TightVNCServer installieren
Auf Linux Systemen ist die Installation sehr einfach. Der TightVNCServer ist zwar nie vorinstalliert, liegt aber üblicherweise in den Distributionspaketen vor und kann über folgende Zeile vom Paketmanager installiert werden:
sudo apt-get install tightvncserver
Das Paket ist nicht sehr groß und die Installation dauert wenige Sekunden. VNC Server installieren wird mit dem Paketmanager zur einfachen Aufgabe!
TightVNCServer konfigurieren
Gestartet wird der Server direkt in der Kommandozeile. In den Parametern kann man diesen bereits konfigurieren. Folgende Parameter kann man angeben:
- geometry
Die Desktop Auflösung die übertragen werden soll. Man kann recht beliebige Werte eingeben, Sinn macht eine Auflösung die man auf dem Client gut sichtbar anzeigen kann. Überträgt man den entfernten Desktop Vollbild, dann sind herkömmliche Bildschirmauflösungen eine gute Idee. Ich arbeite gerne mit Full HD, also 1920×1080. Je nach Bandbreite machen niedrigere Auflösungen Sinn. - depth
Die Farbtiefe des übertragenen Bildes. Je geringer desto schneller. Werte von 8 bis 32 sind üblich. Bei 32 Bit benötigt man wieder eine entsprechend gute Bandbreite. - name
Man kann dem Desktop einen Namen geben der im Clientprogramm angezeigt wird. - localhost
Mit dieser Option wird der Desktop nur für die lokale Adresse übertragen. In der ersten Überlegung macht das keinen Sinn, da man ja von entfernt zugreifen will. Mit diesem Parameter verhindert man, dass VNC über einen Port von außen aufrufbar ist. Über einen SSH Tunnel kann man trotzdem VNC verwenden. Mehr dazu im Artikel über die Absicherung. - kill
Spezieller Parameter. Die Übertragung des angegebenen Bildschirms wird beendet.
Erstellt wird nun eine VNC Session wie folgt:
vncserver :1 -geometry 1920x1080 -depth 16 -localhost
Beim erstmaligen Start wird man noch nach einem Passwort gefragt. Die VNC Verbindung ist über ein Passwort geschützt. Dieses muss man bei jedem Login im VNC Client eingeben. Zusätzlich hat man bei der Abfrage auch noch die Möglichkeit ein View-only Passwort zu setzen. Das macht den Sinn, dass man Screen Sessions für Präsentationszwecke überträgt. Nun läuft das Service so lange bis man den Rechner neu startet oder man die Verbindung mit folgendem Befehl beendet:
vncserver :1 -kill
VNC am Client aufrufen
Um sich mit dem entfernten Desktop zu verbinden benötigt man ein VNC Client. Je nach Betriebssystem und Gerät gibt es da viele unterschiedliche Programme. Einige Beispiele:
- RealVNC
- Remmina
- Chicken of the VNC
Es gibt kommerzielle und Open Source Programme. Manche unterstützen SSH Tunnel, andere wieder nicht. Manche sind mit einem Klick zu konfigurieren andere bieten viele Einstellungen an und können mehrere Sessions gleichzeitig verarbeiten. Gerade im mobilen Bereich ist der Qualitätsunterschied oft hoch, da die Touch zu Tastatus und Mausumsetzung unterschiedlich gut gelöst ist. Wie man sich beispielsweise über VNC mit dem iPad zum Raspberry Pi verbindet habe ich bereits genau beschrieben.
VNC Server beim Systemstart starten
Die Frage taucht eigentlich immer wieder auf: Wie kann man den VNC Server automatisch starten. Bei einem Serverneustart soll das VNC Service automatisch starten, damit man ungestört den Desktop erreicht. Sonst müsste man immer zuerst eine SSH Verbindung aufbauen, das Service manuell starten und sich dann über VNC verbinden. Macht viel Arbeit. Das ganze funktioniert sehr einfach über eine einfache Autostart Konfiguration.
Fazit
VNC ist ein tolles Service über das man auch auf entfernten Rechnern am Desktop arbeiten kann. Wie man sehen kann ist VNC Server installieren recht einfach. Es ist schnell und zuverlässig und funktioniert Betriebssystem übergreifend. Einziger Nachteil ist, dass es als unsicher gilt und ein offener VNC Port schnell zu einem gehacktem System führen kann. Deshalb zeige ich euch im nächsten Artikel, wie man diesen VNC Zugriff von außen optimal absichert.
Welchen VNC Client benutzt ihr bzw. könnt ihr empfehlen? Gerade bei mobilen Geräten wäre es echt interessant zu erfahren mit welchen Programmen ihr gut arbeiten könnt.