Update mit lokalem Repo

  • Hallo zusammen,

    meine Shellys wandern gerade in ein eigenes IOT Netz(VLAN) was natürlich keine Verbindung zur Aussenwelt bekommt.

    Was jetzt schon funktioniert ist das die Firmware's lokal auf einem Webserver liegen und ich das update über den Http aufruf mache.

    api.shelly.cloud wird DNS seitig auf den internen Webserver umgelegt.

    Leider fehlt mir noch die Idee, wie ich das Shelly interne Firmware update nutze, der baut ja folgenden Link zusammen:

    Die Folderstruktur ist auch nachgebaut

    http://api.shelly.cloud/files/firmware?type=SHSW-1&device=shelly1-BA43A2&fw=20210429-100340%2fv1.10.4-g3f94cd7

    http://ip-shelly/ota?url=http:/…PLG-S_build.zip geht

    Das hätte den Vorteil das ich einfach weiter in FHEM xupdate über mqtt machen könnte.

    Nein ich brauche die Shelly App nicht auch nicht zum einrichten

    Nein ich brauche keine Cloud (habe meine eigene)

    Was mir noch aufgefallen ist mal können die Shelly's NTP zum internen NTP Server mal nicht. Da habe ich bisher keinen Ansatz gefunden

    Gruß

    Micha

    Ich hatte extra einen neuen Post aufgemacht weil der andere über lokales Update irgendwie mit Beta post etc unübersichtlich ist

    Shelly1, 2, 2.5, Dimmer, RGBW, RGBW GU10

    Philips Hue

    Osram Light

    Dresden Conbee

    Homematic Thermostate , Fensterkontakte, Dimmer, Schalter

    Zentrale FHEM mit Datenbank, Grafana.

    Synology 1618+ SSD Raid1, Host für Vm und Docker

    Ubiqui Netzwerk mit Switchen und AP's(POE)

  • Du brauchst halt auf Deinem privaten Webserver etwas (= ein Skript) namens /files/firmware, das die GET-Variablen entgegennimmt, und daraufhin die richtige ZIP-Datei ausliefert. Das kann man in PHP, Python, Ruby, … usw. erstellen. Falls Du keinen Webserver hast (Apache, Nginx), bringen die Skriptsprachen auch gleich einen einfachen Webserver mit.
    Wer oder was liefert denn aktuell die ZIP-Datei bei Dir aus?

    (Kann freilich auch sein, dass Du das bereits alles weißt, und ich die Frage falsch verstanden habe)

  • Da das ein Windows Server ist auf dem IIS Server läuft. Den brauche ich für Veeam Backup und PRTG Monitoring ist es ein Powershell Script was stumpf täglich einmal die Files vom Shelly Server holt.

    Leider bin ich mit scrpting auf Kriegsfuss. Ich baue dir Rechenzentren etc aber ein kleines Script bringt mich an den rand des wahnsinns ;)

    Shelly1, 2, 2.5, Dimmer, RGBW, RGBW GU10

    Philips Hue

    Osram Light

    Dresden Conbee

    Homematic Thermostate , Fensterkontakte, Dimmer, Schalter

    Zentrale FHEM mit Datenbank, Grafana.

    Synology 1618+ SSD Raid1, Host für Vm und Docker

    Ubiqui Netzwerk mit Switchen und AP's(POE)

  • Du kannst alternativ auch für Deinen IIS einen Rerverse-Proxy aufsetzen. Leider habe ich keine Ahnung von IIS. Für Apache und Nginx sähe das anders aus.

    Der Reverse-Proxy auf Deinem falschen Shelly-Server nimmt die Anfrage nach Firmware-Update entgegen, leitet sie unverändert zum echten Shelly-Server im Internet, nimmt die Antwort engegen, und liefert sie ebenso unverändert an die anfragende Shelly zurück.

    Einmal editiert, zuletzt von Hiegeix7 (2. November 2021 um 11:26)

  • Noch eine Alternative:
    Da man auf den Shellys keinen Proxy setzen kann, ist ein Zwangsproxy denkbar. Das lässt sich auf einem Raspi realisieren, welchen Du dann in den Shellys als Gateway einstellst. Die Firmware-Updates kommen dann zwar (wie oben beim Reverse-Proxy) aus dem Internet, aber es besteht keine direkte Verbindung. Auf dem (Zwangs)-Proxy kann man dann auch per White- oder Blacklist regulieren, welche Zugriffe blockiert werden.

  • Dieses Thema enthält 5 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind.