Remote-OpenWRT-Versionskontrolle?

Remote-OpenWRT-Versionskontrolle?

Ich befinde mich in einem etwas ungünstigen Szenario, in dem ich möglicherweise Hunderte von Remote-OpenWRT-Geräten auf der ganzen Welt habe. Ich werde keinen Zugriff auf die Netzwerke haben, mit denen OpenWRT über Ethernet verbunden ist. Aus diesem Grund ist die Portweiterleitung keine Option für den Zugriff auf SSH-Dienstprogramme usw.

Ich habe mir Lösungen wie Puppetlabs angesehen, bin aber kein großer Fan von Abhängigkeiten von Drittanbietern. Die Lösung muss einfach, nachhaltig und konsistent sein.

Mein aktueller Plan sieht vor, dass das Gerät ein Array der installierten Updates speichert und dann in regelmäßigen Abständen eine API-Anfrage stellt, um ein Remote-Array aller verfügbaren Updates abzurufen. Wenn Updates fehlen, werden sie der Reihe nach installiert (die Reihenfolge ist natürlich erforderlich). Die Updates werden Skriptdateien sein, um die erforderlichen Änderungen vorzunehmen. Wenn ich darüber nachdenke, könnte OpenWRT einen WebSocket zu meiner API verwalten? Auf diese Weise kann meine API ihm Befehle erteilen, ohne dass eine Portweiterleitung erforderlich ist.

Es wäre toll, einige Hinweise/Empfehlungen dazu zu bekommen. Ich möchte nur, dass es einfach und effektiv ist. Nichts Ausgefallenes.

Antwort1

Wie wäre es, auf OpenWRT-Systemen so etwas wie eine Cronjob-Aufgabe zu erstellen, die eine Verbindung zu einer externen API herstellt und ihr Informationen wie verfügbare Updates usw. sendet?

Es könnte auch einige Befehle von der API empfangen und einige Aufgaben lokal ausführen (z. B. das System aktualisieren, ein Paket installieren, einen Reverse-Tunnel öffnen, um auf den Webkonfigurator oder die SSH-Konsole zuzugreifen usw.) …

verwandte Informationen