zurück zur Startseite

zurück zur Übersicht der Heimautomatisierung

24. Das Einloggen in Drittsysteme (Stand 13.11.2018)

Es ist immer wieder mal notwendig, dass man sich vom PC (bei mir immer mit Ubuntu) auf dem Raspberry (auch ein Linuxsystem) einloggen möchte. Oder der Raspberry muss sich auf einem Server (bei mir von Synology, ebenfalls ein Linuxsystem) einloggen. Es gibt also einige Anwendungsfälle, die das Einloggen in Drittsysteme erforderlich machen.

Damit man nicht jedes Mal das Passwort eingeben muss (was automatisch teilweise gar nicht geht und da wo es gehen würde, sollte man es tunlichst sein lassen, denn das bedeutet ja das entsprechende Passwort im Klartext zu hinterlegen), kann man ganz allegemein wie folgt vorgehen, wobei man sich im nachfolgenden Beispiel auf der Maschine befindet, die sich einloggen will.

ssh-keygen -t rsa -b 4096
# erzeugt ein Schlüsselpaar und legt es im Verzeichnis /home/user/.ssh ab
# für unseren Zweck bitte kein Passphrase eingeben (= 2x nur Return-Taste drücken)

# auf dem Raspberry nur „ssh-keygen -t rsa“

ssh-copy-id -i /home/user/.ssh/id_rsa.pub pi@192.168.178.123
# kopiert den öffentlichen Schlüssel in den Rechner, in welchen man sich (in diesem Fall
# als pi) einloggen will, der unter der angegebenen IP-Adresse erreichbar ist und fordert
# einen gleich auf es auszuprobieren

Man kann nun noch viel mehr für die Sicherheit tun, z.B. das Login mittels Passwort komplett unterbinden. Informationen finden sich wie immer via Suchmaschinen.

Wenn sich nun FHEM in andere Systeme einloggen soll, dann muss der Schlüssel auch von dem richtigen user (aus Sicht des Betriebssystems) erzeugt und kopiert werden. FHEM ist dem Linuxsystem als user "fhem" bekannt. Ich bin ja normalerweise als user "pi" auf dem Raspberry eingeloggt. Deshalb muss man in der Datei /etc/passwd auf dem Raspberry die Zeile mit fhem ändern. Die Zeile ist ursprünglich

fhem:x:999:20::/opt/fhem:/bin/false

und muss geändert werden in

fhem:x:999:20::/opt/fhem:/bin/bash

Dann

sudo su – fhem
# Das Leerzeichen vor und nach dem Bindestrich beachten!

eingeben und erst dann wie oben erwähnt auf dem Raspberry mit „ssh-keygen -t rsa“ das Schlüsselpaar erzeugen. Die Schlüsseldateien liegen dann in /opt/fhem/.ssh und man kann den öffentlichen Schlüssel in den Zielrechner kopieren. Das geht natürlich auch mit mehreren Zielrechnern, was in meinem Fall erforderlich ist, weil ich 2 Server habe.

weiter zu: 25. Die Steuerung des Servers