Beim Einrichten eines Knotens (Config Mode) kann das Mesh-VPN eingerichtet werden. Wird dies eingeschaltet, wird ein fastd-Key erzeugt, welcher per Mail vom Knotenbetreiber an uns gesandt wird. Wir schalten danach den Knoten zur Nutzung frei. Außer der Mail braucht ein Knotenbetreiber sonst nichts weiter tun.
Diese Seite erklärt die internen Abläufe zur Freischaltung neuer fastd-Keys und wie diese in unser git Repository gelangen, nachdem wir die Mail vom Knotenbetreiber erhalten haben.
Aus dem git Repository werden die Keys automatisiert viertelstündlich auf die Gateways verteilt und bei Änderungen ein Signal (HUP) an den fastd-Prozess gesendet, welches ein Neueinlesen der Keys auslöst.
Prinzipiell werden Keys auf dem lokalen PC des Bearbeiters editiert und dann in unser Repository übertragen.
Diese Anleitung geht vom git-Client auf der shell/Kommandozeile aus, es ist aber auch möglich das Webfrontend von github zu verwenden.
Wichtig:
Nach Eintragen des Keys auf dem github-Server unbedingt eine Antwortmail an den Knotenbesitzer schreiben mit CC und Antwortadresse auf unsere keys-Adresse.
Wir nutzen zur Zeit private email-Adressen als Absender.
Vorlage Antwortmail:
Hallo $EMPFAENGER_NAME, dein Knoten ist auf den Gateways eingetragen und sollte sich in den nächsten 15 Minuten verbinden können. Toll dass Du Dich für Freifunk engagierst! Unter https://www.westpfalz.freifunk.net findest Du Infos zu Freifunk Westpfalz. Wir treffen uns immer am 1. Freitag im Monat in den Räumlichkeiten des Chaos inKL (Rudolf-Breitscheid-Str. 65, Kaiserslautern) um 19 Uhr. Würde mich freuen Dich dort mal begrüßen zu dürfen. Für aktuelle News oder Fragen zu Freifunk empfehle ich Dir Dich auf unserer Mailingliste einzutragen: http://lists.freifunk.net/mailman/listinfo/westpfalz-freifunk.net Du findest uns aber auch im IRC, auf Facebook und auf Twitter, siehe dazu https://www.westpfalz.freifunk.net/kontakt/ Viel Spaß mit Freifunk und viele Grüße, $EIGENER_NAME
Vorbedingungen
- Installation eines dem Betriebssystem entsprechenden git-Clients
http://git-scm.com/downloads
bei Windows: Zeilenumbrüche konvertieren lassen (CR/LF -> LF), da das Gateway ein Linux-System ist - Schreibrechte auf das peers-ffwp Repository (dazu bitte den github User mitteilen)
https://github.com/freifunk-westpfalz/peers-ffwp - lokalen Ordner clones auf lokalem PC anlegen und dahin wechseln
- das Repository einmalig auf den lokalen PC clonen mittels
git clone https://github.com/freifunk-westpfalz/peers-ffwp.git
Es wird ein Unterordner peers-ffwp angelegt, welcher die fastd-keys beinhaltet - Aufnahme in die keys-Mailadresse beantragen
Darüber werden nämlich neue Keys / Änderungen vom Knotenbetreiber gemeldet
Lokalen Ordner aktualisieren
Vor jedem Ändern/Hinzufügen/Löschen von Keys MUSS der lokale Stand aktualisiert werden! Dies geschieht wie folgt
- In den lokalen Ordner peers-ffwp wechseln und updaten
git pull
Neuen Key eintragen / ändern
Neue Keys oder Änderungen werden über die keys-Mailadresse mitgeteilt. Darin enthalten sind der Name (z.B. wp-Ulmet-3) des Knotens, seine MAC-Adresse und der Key
- Im lokalen peers-ffwp Ordner eine neue Datei mit Namen des Knotens anlegen, z.B.:
wp-Ulmet-3
- Knoten-Name und MAC-Adresse zusätzlich als Kommentar (Kommentarzeile startet mit #) in die Datei einfügen, z.B.:
#Name: wp-Ulmet-3 #MAC: e8:94:f6:61:91:bc
- Key in nachfolgendem Format (Key im Bsp. gekürzt) einfügen, z.B.:
key "418f180279b0d935e8254adb7e...3e5231e72da4950d647a972214";
- Neuen Key / Änderung übertragen ins Repository
git add wp-Ulmet-3 git commit -m "key wp-Ulmet-3 hinzugefügt/geändert" git push origin master
- Antwort-Mail an Knotenbetreiber und keys-Emailadresse senden um mitzuteilen, dass Knoten aufgenommen wurde.
Dateibeispiel z.B. unter
https://github.com/freifunk-westpfalz/peers-ffwp/blob/master/wp-Ulmet-3
Key löschen
Um einen Key (z.B. mit dem Dateiname wp-Ulmet-3) zu löschen, kann man die Datei im Dateisystem löschen und dann diese Löschung mit folgendem Befehl ins Repository übertragen
- Datei wp-Ulmet-3 löschen und Löschung übertragen mittels
#Datei wp-Ulmet-3 im Dateisystem löschen, dann git rm wp-Ulmet-3 git commit -m "key wp-Ulmet-3 gelöscht" git push origin master
git Status abfragen
Am Besten überführt man eine Änderung direkt ins Repository. Sollte dies mal nicht geschehen sein oder um rauszufinden was beim push übertragen wird, kann man folgenden Befehl absetzen
- was wird übertragen
git status
git Kurzübersicht
Eine Kurzübersicht der git Befehle finden sich z.B. unter
- http://rogerdudler.github.io/git-guide/files/git_cheat_sheet.pdf
- https://training.github.com/kit/downloads/github-git-cheat-sheet.pdf