Wie Sie Ihren Raspberry Pi für Virtual Network Computing (VNC) einrichten

Trotz minimaler Maße weiß der Raspberry Pi durch diverse Schnittstellen (USB, Netzwerk) und seine gute Rechenleistung zu gefallen. Nicht von ungefähr ist der Minicomputer Bestandteil vieler elektronischer DIY-Projekte und eine gefragte Plattform für Serveranwendungen verschiedenster Art. Die direkte Bedienung des Pis via Maus, Tastatur und Monitor ist dabei nicht immer möglich bzw. häufig unpraktisch, weshalb hierfür häufig ein separater Desktop-PC zum Einsatz kommt, der Betriebssystem und Ressourcen des Raspberrys via Fernzugriff verwaltet. Für gewöhnlich wird zu diesem Zweck eine SSH-Verbindung zum Minicomputer aufgebaut, die einen schnellen und unkomplizierten Zugang auf die Kommandozeile ermöglicht. Alternativ dazu erlaubt der Einsatz eines VNC-Servers auf dem Raspberry Pi auch den Remote-Zugriff auf die grafische Benutzeroberfläche.

VNC-Server auf dem Raspberry Pi: Was ist das eigentlich?

Hinter VNC (Virtual Network Computing) verbirgt sich eine Client-Server-Software, mit deren Hilfe sich der Bildschirminhalt des gewünschten Systems (Server) auf einem anderen System (Client) anzeigen und steuern lässt. Zu diesem Zweck werden Tastatureingaben sowie Mausbewegungen und -klicks auf Clientseite direkt an den entfernten Rechner übertragen. Installieren und aktivieren Sie VNC also auf einem Raspberry Pi, können Sie den Minicomputer bequem von einem anderen PC aus installieren, konfigurieren und verwalten. Basis von VNC ist das plattformübergreifende Netzwerkprotokoll Remote Framebuffer Protocol (RFB), das die Inhalte als Bitmaps überträgt und TCP-Port 5900 nutzt. Da es zustandslose Verbindungen realisiert, gehen aufgebaute Remote-Sitzungen auch bei vorübergehenden Unterbrechungen oder einem Wechsel des VNC-Clients nicht verloren.

Hinweis

Dieser Ratgeber erklärt, wie Sie einen VNC-Server auf dem Raspberry Pi einrichten, um diesen aus der Ferne zu bedienen. Natürlich ist es umgekehrt ebenso möglich, einen VNC-Client auf dem Minicomputer zu installieren und auf diese Weise einen anderen PC per Fernzugriff zu steuern.

VNC-Server auf dem Raspberry Pi einrichten: Voraussetzungen

VNC-Software ist so konzipiert, dass sie möglichst ressourcenschonend funktioniert. Je mehr Ressourcen die anderen Anwendungen, die auf dem Raspberry Pi laufen sollen, beanspruchen, desto relevanter wird dieser Punkt. Grundsätzlich gibt es aber keinerlei Einschränkungen bei der Wahl des Raspberry-Pi-Modells: Sie können einen VNC-Server also sowohl auf einem Pi der ersten Generation als auch auf dem neuesten Vertreter einrichten und ausführen.

Die Wahl der geeigneten Software fiel lange Zeit auf eine der beiden Lösungen X11VNC oder TightVNC. Beide sind für den Raspberry Pi geeignet und kommen auf dem Minicomputer auch heute noch zum Einsatz. Seit der Integration der PIXEL-Benutzeroberfläche in Raspbian hat das Standard-Betriebssystem mit VNC Connect aber auch seine eigene Virtual-Network-Computing-Anwendung an Bord, die Sie lediglich aktivieren müssen, um von der Fernverwaltungstechnologie Gebrauch zu machen. Voraussetzung ist, dass Sie mindestens Raspbian Jessie nutzen – andernfalls müssen Sie die Client-Server-Software zunächst herunterladen und installieren.

Hinweis

VNC Connect und X11VNC ermöglichen den direkten Eins-zu-eins-Zugriff auf den aktuell sichtbaren Bildschirm des Raspberry Pis. TightVNC überträgt hingegen virtuelle Versionen der Originaldarstellung und ermöglicht so die gleichzeitige Anmeldung mehrerer Benutzer auf dem VNC-Server (ähnlich dem traditionellen Terminalserver-Konzept).

Tutorial: Wie wird ein VNC-Server auf dem Raspberry Pi eingerichtet?

In dem nun folgenden Tutorial zeigen wir, wie sich ein VNC-Server auf dem Minicomputer einrichten und nutzen lässt. Exemplarisch greifen wir zu diesem Zweck auf die einfache und unkomplizierte Installation und Einrichtung der Client- und Serverkomponenten von VNC Connect – der bereits erwähnten Standard-VNC-Suite von Raspbian – zurück.

Schritt 1: VNC Connect auf dem Raspberry Pi installieren bzw. aktualisieren

Im ersten Schritt vergewissern Sie sich, dass Sie die aktuelle Version von VNC Connect auf Ihrem Raspberry Pi installiert haben, indem Sie folgende Befehle in das Terminal eingeben:

sudo apt-get update
sudo apt-get install realvnc-vnc-server
sudp apt-get install realvnc-vnc-viewer

Raspbian bringt in der Folge sowohl die Serveranwendung als auch den Client (Viewer) auf den neuesten Stand. Sie können den Minicomputer also theoretisch jederzeit auch für den Zugriff auf einen VNC-Server nutzen, was wir hier jedoch nicht weiter thematisieren.

Sofern Sie noch eine ältere Version von Raspbian oder ein anderes Betriebssystem auf Ihrem Raspberry Pi nutzen, müssen Sie VNC Connect zunächst herunterladen. Rufen Sie hierfür einfach die offizielle Homepage des Entwicklers RealVNC auf und wählen Sie im Download-Center die Installationsdatei für Raspberry Pi aus.

Schritt 2: VNC-Server aktivieren

Sobald Sie die Software aktualisiert haben, ist es möglich, den Server zu starten. Dies können Sie entweder über die grafische Benutzeroberfläche oder über die Kommandozeile erledigen.

Für ersteres öffnen Sie einfach das Hauptmenü (Himbeer-Icon) und wählen anschließend die Punkte „Einstellungen“ und „Raspberry-Pi-Konfiguration“. Wechseln Sie in den Reiter „Schnittstellen“ und setzen den Eintrag „VNC“ auf „Aktiviert“.

Wollen Sie den VNC-Server auf Ihrem Raspberry Pi über die Kommandozeile anschalten, benötigen Sie das Konfigurationstool raspi-config, das sich folgendermaßen starten lässt:

sudo raspi-config

Navigieren Sie zum Menüpunkt „Interfacing Options“ und scrollen Sie anschließend zur Option „VNC“, um diese im letzten Schritt zu aktivieren („Yes“). Nach der Aktivierung des Servers startet dieser nun immer automatisch, wenn Sie den Raspberry Pi booten.

Hinweis

Die Deaktivierung des VNC-Servers funktioniert auf die gleiche Art – Sie wählen lediglich die gegenteiligen Optionen „Deaktiviert“ bzw. „No“ aus.

Schritt 3: Verbindungseinstellungen überprüfen

Wenn Sie VNC Connect auf dem Raspberry Pi installiert und aktiviert und den Minicomputer im Anschluss neugestartet haben, finden Sie das Icon für den VNC-Server in der Systemleiste der Benutzeroberfläche. Klicken Sie auf dieses Icon, erhalten Sie ein Übersichtsfenster über Konnektivität und Sicherheit der Fernzugriffsanwendung. So zeigt die linke Seite die IP Ihres Raspberrys, die Sie für den Verbindungsaufbau mit dem VNC-Client benötigen. Notieren Sie sich die Adresse, um diese später auf dem externen Rechner parat zu haben. Alternativ lässt sich die IP über den folgenden Terminal-Befehl in Erfahrung bringen:

hostname -I

Auf der rechten Seite finden Sie eine Signatur und Schlagwörter, die zur Identitätsprüfung dienen. Beides sollte per Meldung angezeigt werden, wenn Sie im späteren Verlauf den VNC-Verbindungsaufbau initiieren. So können Sie sicherstellen, dass es sich bei dem angepeilten Zielsystem um Ihren Raspberry Pi handelt.

Tipp

Wenn Sie regelmäßig via VNC auf Ihren Raspberry Pi zugreifen möchten, ist es empfehlenswert, eine feste IP-Adresse für den Minicomputer zu vergeben.

Schritt 4: VNC Viewer auf externem Gerät installieren

Nachdem Sie den VNC-Server auf Ihrem Raspberry Pi zum Laufen gebracht haben, widmen Sie sich nun ganz dem separaten Rechner, von dem aus Sie den Minicomputer fernsteuern möchten. Auf diesem installieren Sie zuallererst die Client-Anwendung – VNC Viewer. RealVNC stellt zu diesem Zweck kostenfreie Installationsdateien für diverse Betriebssysteme zur Verfügung. Dadurch lässt sich der Client u. a. auf Windows-, macOS- und Linux-PCs installieren. Ferner gibt es Client-Apps für Android und iOS sowie eine Chrome-Extension, dank der VNC Viewer über den Google-Browser ausgeführt werden kann. Laden Sie im Download-Center von Real VNC die passende Version herunter und führen Sie anschließend die Installation nach dem systemtypischen Muster durch.

Schritt 5: Direkte Verbindung zum Raspberry Pi aufbauen (im lokalen Netzwerk)

Der schnellste und einfachste Weg zur Nutzung der VNC-Technologie führt über eine direkte Verbindung zwischen dem Client-Rechner und dem Raspberry Pi. Voraussetzung ist, dass beide Geräte mit dem gleichen lokalen Netzwerk (LAN oder WLAN) verbunden sind und dass die IP des Raspberrys bekannt ist. Ist dies der Fall, starten Sie VNC Viewer, geben die Adresse in die dafür vorgesehene Adresszeile ein und starten den Verbindungsaufbau mit der Eingabetaste.

Die Client-Anwendung präsentiert Ihnen danach die bereits angekündigte Meldung (mit Signatur und Schlagwörtern) zur Identitätsprüfung. Handelt es sich dabei um die Angaben, die zuvor auch vom VNC-Server gemacht wurden, können Sie den Vorgang fortsetzen.

Anschließend werden Sie zur Eingabe von Benutzername und Passwort aufgefordert. Dabei handelt es sich um das Raspberry-Pi-Benutzerkonto – standardmäßig der Benutzer „pi“ mit dem Passwort „raspberry“. Um den Zugriff unbefugter Nutzer zu verhindern, ist es empfehlenswert, diese Standarddaten (am besten noch vor dem Start des VNC-Servers) zu ändern.

Schritt 6: Cloud-Verbindung zum Raspberry-Pi-VNC-Server aufbauen

Wenn Sie das Client-System und den Raspberry Pi nicht über ein lokales Netzwerk verbinden wollen bzw. können, haben Sie stattdessen auch die Möglichkeit, die VNC-Sitzung über das Internet aufzubauen. Für derartige Cloud-Verbindungen, die für nichtkommerzielle Zwecke kostenfrei sind und sich durch eine Ende-zu-Ende-Verschlüsselung auszeichnen, benötigen Sie lediglich einen RealVNC-Account. Dieser ist ebenfalls kostenfrei und in wenigen Sekunden angelegt. Für den Registrierungsprozess rufen Sie ein letztes Mal die RealVNC-Homepage auf und geben eine gültige Mailadresse in der Sign-up-Box an.

Die Log-in-Daten für das neu angelegte RealVNC-Konto (Mailadresse und Passwort) benötigen Sie nun gleich zwei Mal – in der VNC-Server-Anwendung auf dem Raspberry Pi und auf Clientseite in VNC Viewer. Im Serverprogramm fügen Sie eine Verknüpfung zum Konto hinzu, indem Sie Mail und Passwort unter dem Menüpunkt „Licensing“ eintragen und anschließend auf „Sign in“ drücken. Auf dem Client-Gerät melden Sie sich einfach mit dem Konto in VNC Viewer an. Der Raspberry Pi wird anschließend automatisch als verfügbarer Host aufgelistet, sodass ein einfacher Doppelklick auf das entsprechende Symbol genügt, um die VNC-Verbindung aufzubauen.

Schritt 7: Bildschirmauflösung des Raspberry Pis anpassen

Steht die Fernverbindung zu dem Raspberry-Pi-VNC-Server, kann es aus zweierlei Gründen notwendig sein, die Bildschirmauflösung des Minicomputers zu ändern:

  1. Die Performance ist eingeschränkt, da die Auflösung zu hoch ist.
  2. Die Standardauflösung wurde beibehalten (etwa, weil der Raspberry nur im Headless-Modus ohne angeschlossenen Monitor genutzt wurde) und ist zu niedrig.

Entsprechende Anpassungsmöglichkeiten finden Sie in dem bereits genutzten Tool raspi-config, das Sie mit dem bekannten Terminal-Befehl starten:

sudo raspi-config

Wählen Sie den Menüpunkt „Advanced Options“ und suchen Sie anschließend nach dem Eintrag „Resolution“. Dort können Sie nun die gewünschte Auflösung auswählen, bevor Sie Tool und Kommandozeile im Anschluss wieder schließen.

Tipp

Wenn Sie mehr Kontrolle über das HDMI-Setting Ihres Raspberry Pis haben wollen, können Sie auch Änderungen in der Konfigurationsdatei /boot/config.txt vornehmen. Über den Eintrag hdmi_mode definieren Sie beispielsweise mit den entsprechenden Werten eines von über 50 verschiedenen HDMI-Output-Formaten. Eine ausführliche Erklärung sowie eine vollständige Auflistung möglicher Werte finden Sie in den offiziellen Online-Manuals (Absatz „HDMI mode options“).

Schritt 8: Performance-Optimierung für VNC auf Raspberry Pi Zero und Pi 1

Wenn Sie den VNC-Server auf einem Raspberry Pi 1 oder Zero eingerichtet haben, ist die Performance aufgrund der etwas schwächeren Rechenleistung dieser älteren Modelle nicht immer stabil. Sofern Sie in einem sicheren, lokalen Netzwerk aktiv sind, können Sie dieses Problem entschärfen, indem Sie die Verschlüsselung deaktivieren – und auf diese Weise die CPU-Auslastung verringern.

Hinweis

Das Ausschalten der Verschlüsselung ist nur für direkte, jedoch nicht für Cloud-Verbindungen möglich.

Rufen Sie das Menü des VNC-Servers auf Ihrem Raspberry Pi auf und öffnen Sie die Optionen. Wählen Sie den Expertenmodus aus und setzen Sie den „Encryption“-Parameter auf „AlwaysOFF“. Die Änderungen wirken sich nicht auf aktive Sitzungen aus, weshalb Sie bestehende Verbindungen beenden und neu starten müssen.