Howto/Per SSH auf Freifunk Router verbinden

Aus Freifunk MWU Wiki
Zur Navigation springen Zur Suche springen


Auf dieser Seite soll beschrieben werden, wie du dich per SSH auf deinen Freifunk-Router verbinden kannst, um z.B. Einstellungen am Knoten-Namen, den Geo-Daten o.Ä. vorzunehmen.

Um dich zu verbinden, brauchst du erstens ein Tool und zweitens die richtige Adresse deines Knotens. Für beides soll es hier ein paar Einstiegshilfen geben.

Der Zugriff auf deinen Freifunk-Knoten muss per IPV6 erfolgen (dein Knoten hat keine IPV4-Adresse). Daher muss dein Rechner, von dem aus du dich verbinden willst, IPV6 unterstützen. Bei manchen Windows-Rechnern ist das standardmäßig nicht der Fall. Daher kann stattdessen z.B. auch Smartphone aus zugegriffen werden z.B. mit dem SSH-Client namens "JuiceSSH".

IP-Adresse herausfinden

Um auf deinen Knoten zuzugreifen, musst du also erstmal seine Adresse ermitteln. Eine Möglichkeit, die IPV6-Adresse herauszufinden, mit der du dich auf deinen Knoten verbinden kannst, ist der Meshviewer. Klicke in der Karte auf deinen Knoten, dann werden dir links in der Übersicht 2 Adressen angezeigt. Für dich wichtig ist die obere der beiden, im Bild mit einem roten Rahmen markiert.

IPimMeshviewer.PNG


Per DNS auf Router zugreifen

Statt die Adresse aus der Map auszulesen, kannst du auch die zweite Möglichkeit nutzen und per DNS-Name auf deinen Router zugreifen. Der DNS Name bildet sich wie folgt:

Knotenname + .nodes.ffmz.org

In unserem obigen Beispiel heißt der Knoten "genNode". Daraus wird im DNS:

genNode.nodes.ffmz.org

Hast du in deinem Knotennamen Zeichen verwendet, die im DNS nicht erlaubt sind, wird einfach kein DNS Eintrag erzeugt und du kannst diese Funktion leider nicht nutzen.

Knoten für den Zugriff per SSH vorbereiten

Um den Knoten über SSH überhaupt erreichen zu können, musst du die entsprechenden Einstellungen während der Einrichtung bereits getätigt haben oder dies jetzt nachholen.

SSH Zugriff mittels Passwort

Der Zugriff mittels Passwort ist die einfachere Variante dafür aber auch nicht so sicher wie der Zugriff mittels Schlüsselpaar. Entscheidest du dich trotzdem hierfür, solltest du ein möglichst sicheres Passwort in den roten umrandeten Feldern eingetragen haben:

SSH GluonConfigPasswort.png

Falls du deinen Knoten schon eingerichtet hast, erfährst du hier wie du die Konfigurationsoberfläche wieder erreichen kannst. Ist dieser Schritt erledigt, kannst du bei dem nächsten Schritt(Einloggen auf dem Freifunk-Knoten) weiter machen.

SSH Zugriff mittels Schlüsselpaar

Der Zugriff auf den Knoten mittels eines Schlüsselpaares, den sogenannten SSH-Keys ist schon etwas anspruchsvoller, mit dieser Anleitung aber auch zu meistern. Interessant ist die Einrichtung vorallem auch dann, wenn man gerne mehrere Knoten verwalten möchte. Für diese Variante benötigst du, wer hätte es gedacht, zunächst ein Schlüsselpaar. Die Erzeugung eines solchen ist betriebssystemabhängig. Entsprechend sind die nächsten Abschnitt für Windows, Linux und Mac OS untergliedert.

Schlüsselpaar unter Windows erzeugen

Für die Erzeugung eines Schlüsselpaares unter Windows benötigst du das Programm PuTTYgen, das du hier herunterladen kannst.

DownloadPuTTYgen.PNG

Nach dem Download startest du das Programm "puttygen.exe" mit einem Doppelklick. Danach solltest du das folgende Fenster sehen:

PuTTYgenStart.PNG

In diesem Fenster klickst du den Button "Generate" an, worauf im oberen Bereich unter Key ein Ladebalken sowie die Aufforderung "Please generate some randomness by moving the mouse over the blank area" erscheint.

PuTTYgenRandomness.PNG

Mit der "blank area" ist der graue Bereich unterhalb des Ladebalkens gemeint. Nun also die Maus in diesem Bereich hin und her geschubbst und schon bewegt sich der Ladebalken kontinuierlich weiter nach rechts. Sobald der Ladebalken rechts angekommen ist, dauert es nur noch einen kleinen Moment und dein Schlüsselpaar ist erzeugt. Die Oberfläche des Programms sollte nun so aussehen. Die Schlüssel auf dem Bild und jene bei dir Unterscheiden sich natürlich!

PuTTYgenKeys.PNG

Nachdem das Schlüsselpaar erzeugt ist, kannst du es nun noch mit einem Kommentar versehen, damit du deine Schlüssel, für den Fall dass du einmal viele davon hast, zuordnen kannst. Hierzu kannst du das Feld "Key comment" verwenden. Die Felder "Key passphrase" und "Confirm passphrase" dienen dazu, dein Schlüsselpaar zusätzlich mit einer Passphrase zu versehen. Falls dein geheimer Schlüssel jemals in fremde Hände fällt, braucht der Fremde auch noch diese Passphrase, um deinen Schlüssel verwenden zu können (du musst dir die Passphrase natürlich auch merken, möchtest du den Schlüssel verwenden!) Wie du siehst, wurden die Felder in unserem Beispiel entsprechend ausgefüllt.

PuTTYgenKeysEnde.PNG

Jetzt geht es ans Eingemachte! Um die Schlüssel mit deinem Knoten verwenden zu können, musst du Sie zunächst als Dateien speichern. Lege dir dazu am besten ein Verzeichnis an. In dieses Verzeichnis speicherst du mit einem Klick auf "Save public key" zunächst deinen öffentlichen Schlüssel. Wähle in dem erschienen "Speichern"-Dialog dein Ordner aus und entscheide dich für einen Dateinamen, in unserem Beispiel nennen wir die Datei "gennode_pub.txt".

PuTTYgenPubkeySpeichern.PNG

Anschließend speicherst du deinen privaten, geheimen Schlüssel mit einem Klick auf "Save private key" unter dem Namen "gennode_priv.ppk" im selben Verzeichnis wie deinen öffentlichen Schlüssel.

PuTTYgenPrivkeySpeichern.PNG

Lasse das PuTTYgen-Fenster mit dem erzeugten Schlüsselpaar unbedingt geöffnet. Im nächsten Schritt benötigst du die Zeichenkette im Feld "Public key for pasting into OpenSSH authorized_keys file".

PuTTYgenKeysEndeMarkiert.PNG

Zunächst ist es allerdings nötig, dass du wie hier beschrieben die Konfiguration deines Knotens aufrufst und dich im Expertenmodus zum Remotezugriff durchklickst. Dort angekommen solltest du die unten abgebildete Maske sehen:

SSH GluonConfigSSH.png

Mache einen Rechtsklick in "Public key for pasting into OpenSSH authorized_keys file" und klicke auf "Alles auswählen". Der Schlüssel sollte nun markiert sein. Anschließend machst du wieder einen Rechtsklick und wählst "Kopieren" aus. Nun öffnest du wieder das Fenster mit der Remotezugriff-Konfiguration deines Knotens. Dort klickst du in das gelbe Feld unter SSH-Keys und fügst den Schlüssel dort ein. Achte unbedingt darauf, dass der eingefügte Schlüssel in einer einzigen Zeile, also ohne Zeilenumbruch, steht. Mit einem Klick auf "Speichern" ist die Konfiguration auf dem Router abgeschlossen und du kannst zu dem Kapitel Einloggen auf dem Freifunk-Knoten springen.

Schlüsselpaar unter Linux erzeugen

Anleitung folgt

Schlüsselpaar unter Mac OS erzeugen

Anleitung folgt

Einloggen auf dem Freifunk-Knoten

Im zweiten Schritt musst du die - wie oben beschrieben ermittelte - IPV6-Adresse deines Knotens eintragen. Den Rest übernimmt eigentlich das Tool. Zum Einloggen benötigst du natürlich dein Passwort, das du hoffentlich beim Konfigurieren des Knotens gesetzt (und dir gemerkt) hast.

Falls du kein Passwort gesetzt hast, kannst du dich nicht per SSH verbinden. Dann musst du den Router entweder nochmal in den Konfig-Modus starten und das Passwort in der Weboberfläche setzen. Oder du startest ihn in den Fail-Safe-Modus (da ist er nur per Telnet erreichbar) und setzt ein SSH-Passwort. Beides soll aber nicht Bestandteil dieser Anleitung sein.

Windows: Putty

Putty1.png

Nach dem Verbinden mit dem user root und dem bei der Installation eingerichteten Passwort anmelden.

Bei Verwendung eines SSH-Schlüssels ist die Verbindungsprozedur etwas aufwändiger:

Zuerst muss man die gespeicherte Session laden.

Connection-load-session.jpg

Danach links unter Connection --> Data bei Auto-login username den Benutzer root eingeben.

Connection-Data.jpg

Zuletzt muss der private Schlüssel noch angegeben werden, dies erfolgt unter Connection --> SSH --> Auth ganz unten, wenn man den Button "Browse" drückt.

Connection-Private Key.jpg

Die richtige Datei wählen, Ok und dann zuerst nach oben gehen und die Konfiguration mit "Save" speichern. Nun kann durch Klicken auf den Button "Open" die Verbindung hergestellt werden. Nach einem Moment sollte sich das Terminal-Fenster öffnen, es wird ggf. noch die Passphrase zum Key abgefragt, sofern man bei der Generierung eine solche angegeben hat und dann sollte es so ähnlich aussehen.

Connection-Ready.jpg

Android: JuiceSSH

Installation aus Playstore. Angeben der o.g. Adresse.