Gluon-Remote-Tool

Moin,

ich bin auf der suche nach so ziemlich allen nodes.json files von so ziemlich allen Communities.

Wozu?
Ich würde die gerne für mein noch in Entwicklung stehendes Tool für Remote Managing von Gluon nutzen. Um die Ip’s der Router automatisch einzulesen brauche ich dazu die nodes.json, da daraus die IPv6 generiert wird.

Und wo werden die Daten gespeichert?
Die Links sowie die IPv4 und IPv6 prefixe werden hier gespeichert. Die nodes.json der Community wird dann gezielt gedownloaded und nicht gesaved auf dem git (die momentan vorhandenen sind lediglich demo-Daten).

Ich würde mich freuen wenn ich entweder hier die links zu diesen files finde (oder möglicherweise einen ort genannt bekomme wo ich die abfragen kann) oder ich nehme auch gerne pull requests an :smile:


EDIT 21:37
Ich habe die freifunk api schon gesehen. leider sind da viel zu viele api files mit links zu nicht erreichbaren nodes.json files

2 Likes

Kann leider nicht inhaltlich antworten, aber würde gerne wissen, ob’s irgendwo eine Beschreibung deines Tools gibt? Ich hab nämlich eventuell etwas ähnliches in Entwicklung (noch relativ frühes Stadium, daher noch nicht online).

Hi,

meins ist auch in einem sehr frühen status und ich kopiere hier mal dreist meine Email aus der Flensburger Mailingliste:

Moin,
ich hatte da eine Idee ob man nicht eine web oberfläche für Router
verwaltung machen sollte. Die wäre dann für große Managment sachen wie
EAE’s oder ähnliches praktisch.

Habe nun vor eine kleine seite zu bauen die nicht zu vergleichen mit dem
netmon ist. Ich würde mich freuen wenn ihr mal Kritik und wünsche dafür
nennen könntet

Meine bisherige Feature idee Liste ist:

  • User Accounts
    – Jeder User kann unendlich viele Router verbünde machen
    — In den Verbünden können Router gemanaged werden und automatisch durch
    nummeriert und geflashed werden
  • Status der Router anzeigen (On/Off, Link stärke, Fastd links, etc.)
  • UCI Commands per Web absenden
  • automatisches key einsenden (für netze wie kiel oder wo man das sonst
    so machen muss)
  • auswahl der update branch für die ganze kategorie
  • soll open source sein
  • entweder in lua oder php
  • muss im ff laufen (vlt als service auf einem gw und dann mi user accounts)
  • eventuell (wahrscheinlich eher nicht) auch gateway managment oberfläche

Ich hoffe das ihr mir da zustimmt das man sowas brauchen könnte

Teilweise sind da Sachen schon entschieden so nutze ich zum Beispiel php und es ist open Source :smile:

2 Likes

Klingt auf jeden Fall spannend - da bin ich gespannt. Meins ist eher kleiner gehalten: Das soll ein Wordpress-Plugin werden, wo man die gängigen Daten (Location, Name, Mesh, VPN usw) direkt auf der Freifunk-Seite der angeschlossenen Community ändern kann, ohne dafür in den Config-Mode zu müssen. Die aktuelle Version hat aber noch so viele Bugs, dass ich sie noch nicht online stellen will :wink:

Ich habe vor ein Api bereit zustellen :wink: vielleicht kann man die Projekte an manchen Punkten ja kombinieren.

Das wäre natürlich cool. Auf welcher Seite wird die API denn liegen - auf den Routern oder auf dem Webserver? Weil mein Konzept sieht vor, dass die Router sich die Daten von einer Webserver API abrufen und nicht umgekehrt (um Sicherheitslücken vorzubeugen)

Ich will keine Pakete für den Router machen. Ich werde NUR Ssh nutzen und uci commands per php senden. Die API wird auf einen Webserver sein und die Daten die ich hier gerade zusammen suche generieren um diese bereit zustellen. Heisst ich werde eine Api haben die auf jedenfall die IPv6 adressen der Router sortiert nach routernamen und Communitie ausspuckt. Habe mir aber zu dem API teil noch wenige gedanken gemacht :wink:

Zu meiner oben genannten Software: Was haltet ihr von einer funktion damit auch halb-automatisch gateways einzurichten zu können indem ich das puppet script von hamburg und kiel dafür nutze?

Moin
@mtrnord und @Andi

Hat sich da was neues ergeben?

Klingt sehr interessant was ihr da vorhabt.

Gruß

@Nordrunner Also ich habe momentan nur das Grund design und nur die Features auf dem Papier. Aktuell überlege ich wie ich die Sicherheit am besten sicherstellen kann und bastel ausserhalb rum. Eine Demo ist im FFNORD unter der IP 10.187.255.12 bzw unter [2a03:2267:4e6f:7264:cf06:192e:88e2:d0f3] erreichbar. Allerdings hat diese eine Ladezeit von ca 1min und ist fast komplett ohne Funktion.

1 Like

Ach und eventuell für @Andi interessant: Ich habe eine Datei mit Communities (nicht vollständig) wo prefixe, netmask und nodeFile URL drin stehen falls du das für dein tool benötigst

Und was ist mit „Nord“?

Gruß

Ist doch da :slight_smile: Das Forum zeigt nur nicht die ganze Datei :wink:

1 Like

Moin @mtrnord .

Weil ich gerade drüber gestolpert bin:

Automated flashing with a script

Version 2.x with newest firmware (3.19.32) hast 192.168.0.1 as default
IP and maybe differences in web interface. So this script needs adaption
to work for 2.x devices.

Flashing hundreds of devices using the web interface can be a real pain. You can use this shell script to automate it:

#!/bin/bash
 
# Pass the firmware image file to be flashed as the first and only
# command line argument.
#
# The second curl call will time out, but it is expected. Once the
# script exits, you can unplug the ethernet cable and proceed to the
# next router, but do KEEP each router ON POWER until the new image is
# fully written! When flashing is done the router reboots
# automatically (as shown by all the leds flashing once).
 
curl \
  --user admin:admin \
  --user-agent 'Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:12.0) Gecko/20100101 Firefox/12.0' \
  --referer 'http://192.168.1.1/userRpm/SoftwareUpgradeRpm.htm' \
  --form "Filename=@$1" -F 'Upgrade=Upgrade' \
  http://192.168.1.1/incoming/Firmware.htm > /dev/null
 
sleep 1
 
curl \
  --max-time 2 \
  --user admin:admin \
  --user-agent 'Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:12.0) Gecko/20100101 Firefox/12.0' \
  --referer 'http://192.168.1.1/incoming/Firmware.htm' \
  http://192.168.1.1/userRpm/FirmwareUpdateTemp.htm >  /dev/null

Kennst Du das? gefunden habe ich es hier: WIKI zum 1043 bei OpenWRT

Entschuldigt bitte die Textformation. Ich habe einfach nur copy&paste gemacht.

Gruß

1 Like

@Nordrunner Ich hoffe es war ok das ich den Code Formatiert habe.

1 Like

Moin.

Na logo @stefan. :+1:

Gruß

@Nordrunner Jo hab ich auch gesehen :slight_smile: Hab es mir aber noch nicht genauer angesehen :wink:

Moin

@mtrnord

Sach mal Marcel, soll das sowas werden wie Pharos von TP-Link für Freifunk, oder wie muss ich mir dein Projekt vorstellen?

Gruß

@Nordrunner

TL;DR: Es soll den Config Mode sicher in den „ClientNetz-mode“ bringen um bei Einstellungen keine bzw. eine geringe Downtime zu erzeugen.


Also das Tool ist nicht wie Pharos allerdings ist es wie Pharos auch im „nicht-Config-Mode“ erreichbar und sorgt dafür, dass man Einstellungen ändern kann ohne den Knopf drücken zu müssen, warten, (und so weiter)…

Es nutzt die Shell commands, welche man auch selber in einer Shell eingibt und braucht auf den Routern keine zusätzlichen Tools. Für Anfänger hätte dies den Vorteil das man nicht x Commands in eine Shell eingeben muss bei denen man in 50% der Fälle nicht weiß was man tut.

Zu sehen wird eine strukturierte Oberfläche, die eine starke Ähnlichkeit zum Config mode haben wird und auch zusätzliche Features haben wird.
(Ich stelle mir vor, dass ein Community Config generator und/oder ein Gateway-aufsetzer eine Idee wären als Zusatzfeature)

Es werden keine UserDaten direkt auf dem Server gespeichert (also der SSH key der generiert wird wird nicht auf den Server gespeichert). Nur das User Profil wird auf dem Server gespeichert, womit der Server sich merkt welche Router der User besitzt bzw managed. Der Server kann aus dem SSH-Key nicht zurück verfolgen welcher key welcher Router ist.
Allerdings ist einmaliger Zugriff auf den Router per Hand nötig, denn im Config Mode muss ein SSH-Key eingefügt werden, damit der Server die Commandos „eingeben“ kann.

Ein Reboot des Routers wird immer erst am Ende des Einstellen gemacht bzw. nur wenn dieser zwingend notwendig ist. Ziel ist es, dass das Client Netz keine bzw. eine sehr geringe Downtime hat.

Das initiale Setup und installieren der Firmware übernimmt das Tool vorerst NICHT.

2 Likes

Moin.

@mtrnord
Hallo Marcel. Frohes Neues wünsche ich. :grin:

Ich habe, wenn überhaupt nur die Hälfte von dem Verstanden, muss ich aber auch nicht, wenn das Produkt deiner/eurer Entwicklung eine vernünftige Hilfestellung bei der Nutzung bietet. Also bitte daran denken.

Ich wünsche viel Erfolg und produktive Zeiten und hoffe das sich Mitstreiter finden.

Wie man hört, sollst Du ja erstmal die „Piste“ unsicher machen. Viel Spaß dabei!

Also ihr Bits.- und Bytes-Schieber, lasst mal die Tastatur glühen! Ich finde, ein interessantes Projekt.

Gruß