Aus der Ferne zugreifen

Didaktische Kommentare
In diesen grünen Kästen sind Hinweise, Gedanken, Tipps und Erfahrungen aufgeschrieben, die sich aus dem Einsatz des Materials in der Lehre ergeben haben.
Die Kommentare können mit dem Button unsichtbar geschaltet werden.

Nicht immer gibt es die Möglichkeit, vor einem Rechner zu sitzen, um an ihm zu arbeiten. Das ist bei vielen Anwendungen auch gar nicht notwendig, vor allem, wenn diese Anwendungen keine grafische Benutzeroberfläche benötigen. Warum dann also Monitor, Maus und Tastatur anschließen?

Eine dieser Anwendungen ist ein Dienst für die Auslieferung von Webseiten, auch Webserver genannt. Webserver werden in diesem Skript an anderer Stelle eingeführt und erläutert.

Anmelden auf dem Server per SSH

Mit dem Ziel, Anwendungen einzurichten und zu administrieren, die keine grafische Benutzeroberfläche haben, werden Sie sich im Folgenden auf dem Raspberry Pi per Fernzugriff anmelden. Das ist möglich, wenn Sie Ihre IP-Adresse im Netzwerk kennen.

Secure Shell, kurz: SSH, heißt das Protokoll, über das eine verschlüsselte Verbindung für den Fernzugriff möglich ist. Dafür muss auf dem entfernten Rechner ein SSH-Server laufen, bei dem sich ein SSH-Client anmelden kann.

Dadurch, dass Sie bei der Konfiguration den SSH-Server auf dem Raspberry aktiviert haben, lauscht dieser jetzt auf seiner IP-Adresse auf Port 22, ob jemand sich von außen mit ihm verbinden will. Probieren Sie’s aus!

Der Dollar am Anfang. Sie haben wahrscheinlich schon bemerkt, dass im Terminal ein $ am Anfang der Eingabeaufforderung steht. Dieses wird für gewöhnlich auch in Codebeispielen an den Anfang jeder Zeile geschrieben, um auf den Kontext “Terminal” zu verweisen.
Das $ wird nicht mit eingegeben!

  1. Öffnen Sie ein Terminal auf Ihrem Computer.
  2. Vergewissern Sie sich, dass Sie die korrekte IP-Adresse des Raspberrys kennen, mit dem Sie sich verbinden wollen.
  3. Geben Sie den Befehl ssh pi@192.168.178.34 ein, wobei Sie die IP-Adresse entsprechend durch Ihre ersetzen.

Dabei ist ssh der Befehl, pi der Nutzer auf dem Raspberry und der Rest dessen IP-Adresse. Gelingt die Verbindung im Netzwerk und existiert ein Nutzer pi auf dem Rechner, werden Sie nach dem Passwort gefragt. Können Sie sich authentifizieren, gelangen Sie auf die Kommandozeile des Raspberry. Nun können Sie von Ihrem Rechner aus alles auf dem Raspberry tun, was Sie auch als Nutzer pi direkt am Gerät mit Tastatur und Maus tun könnten.

Man in the Middle

Beim erstmaligen Verbinden per SSH wird Ihnen ein öffentlicher Schlüssel (public key) gezeigt, der so etwas wie der “Personalausweis” des Rechners ist, ihn also eindeutig identifiziert. Wenn Sie den Schlüssel kennen, können Sie sicher sein, dass die Verbindung nicht von einem man in the middle abgefangen wird. Lesen Sie mehr dazu im Beitrag How to check SSH public key fingerprints?.

MACs und Linux-Rechner verfügen über die direkte Möglichkeit, eine SSH-Verbindung im Terminal zu entfernten Rechnern herzustellen. Bei aktuellen Windows-Versionen gelingt das über die PowerShell. Wenn nicht, sind folgende Programme eine verlässliche Alternative:

SSH unter Windows

Es gibt zwei bewährte Möglichkeiten, sich per SSH auf entfernte Rechner zu verbinden.

  1. Nutzung von puTTY
  2. Nutzung von GitBash aus dem Paket Git for Windows (empfohlen)
Keine Verbindung. Eine häufige Fehlerquelle ist, dass sich die Lernenden mit ihren Clients nicht im selben Netzwerk befinden wie die Raspberrys.
Neue IPs vom DHCP. Je nach Konfiguration des DHCP-Servers kann es vorkommen, dass die Lernenden in der Folgesitzung komplett andere IP-Adressen bekommen. Was aber so gesagt lästig erscheint, bietet eine weitere Chance, sich mit MAC- und IP-Adressen auseinanderzusetzen.
Zurück
Weiter