Hallo Zusammen, Ich nutze den ESP8266 als Webserver. Der ESP hostet eine Website die unteranderem "Bildchen" beinhaltet, wesshalb ich den Application Cache des Browser verwende. Seit ein paar Monaten erlauben alle gängigen Browser die Verwendung des Apllication Caches nicht mehr wenn die Verbindung zum Server (in dem Fall zum ESP 8266) nicht über https stattfindet. Desshalb, und auch generell, ist es denke ich sinnvoll via https zu kommunizieren. Ich habe ein Beispiel gefunden, bei dem der ESP vermutlich als HTTPS WebServer verwendet wird. https://github.com/thorsten-l/ESP8266-HTTPS-SampleServer Allerdings läuft dieser Sketch bei mir nicht. Hat jemand von euch schon mal einen HTTPS Server mit einem ESP realisiert, oder kennt jemand das verlinkt Beispiel und kann mir weiter helfen? Danke schon mal und Grüße Theo
ganz ehrlich ? das ding ist ein mikrocontroller....kein high performance wunder...https kannsr du dir da sparen da du moderne ciphers wie ecdsa etc performancebedingt nicht inplementiert bekommst. für soetwas ist ein raspberry zero w die wesentlich bessere wahl!
Zwar gibt es eine TLS implementierung, aber die lässt alle Zertifikate ungeprüft durch und ist daher unsicher. Außerdem sind Performance und RAM des ESP8266 zu klein, dass man damit etwas vernünftiges anfangen kann.
OK. Habt ihr dann andere Vorschläge, wie ich den Application Cache wieder nutzen kann? Wie gesagt, alle Browser setzen, eine Verbindung über https voraus. Grüße
Ohne das Gesamtsystem zu kennen ist es schwer Vorschläge zu machen. Einer wäre einen globalen https Server als Proxy zu verwenden. Der kann dann alle statischen Sachen direkt ausliefern und die dynamischen holt er vom entsprechenden ESP per http. Mehrere ESPs werden dann über die URL unterschieden. Das hat auch den Vorteil, dass man sich grafisch ausferkeln kann ohne die Resourcen des kleinen Controllers zu sprengen. Bei Änderungen an den Teil ist dann auch kein Neuflashen des ESP nötig. Außerdem kann man alle Möglichkeiten eines 'richtigen' http(s)-Servers nutzen und somit die ESPs vor Angriffen aus dem Netz schützen. Aber wie gesagt, wir wissen nicht mal ob das überhaupt am Internet hängt. Für meine Heimautomation habe ich einen Apache im Internet laufen. Das ist das öffentliche Einfallstor, das entsprechend abgesichert werden muss. Dann gibt es noch einen ssh-Tunnel nach Hause über den der öffentliche Apache dynamische Inhalte aus meinem Netz holt. Damit ist nicht ein einziger offener Port auf meinem Router nötig und selbst http-Requests werden durch den ssh-Tunnel verschlüsselt.
Die "einfache" Lösung wäre, wie übliche einen Apache HTTP(s) Server dazwischen zu schalten. Aber ich schätze mal, das wolltest du in diesem speziellen Fall gerade vermeiden. Jedenfalls solltest du diese kleinen Mikrocontroller ohnehin nur lokal nutzen. Nicht im öffentlichen Internet - auch nicht durch einen mehr oder weniger transparenten Proxy. Dafür sind sie einfach zu unsicher und wenn es mal zu einem Einbruch kommt, kann niemand nachvollziehen, wie es passiert ist. Falls das irgendwie über Internet erreichbar ist, stimme ich meinem Vorredner zu: Dann sollte ein ausgewachsener Applikations-Server (z.B. Apache HTTP Server oder Tomcat) das ganze Webinterface realisieren. Der ESP würde nur noch simple Kommandos wie "Licht 3 an" empfangen. Der ganze Security Kram wäre Aufgabe der ausgewachsenen Server.
Beitrag #5727041 wurde von einem Moderator gelöscht.
> TestX schrieb: etwas Birgel schrieb im Beitrag #5727041: > Warum mutest du mir deine stümperhafte Rechtschreibung zu? Du warst gar nicht angesprochen. Warum platzt du hier von der Seite herein ohne etwas zum Thema beizutragen?
Hallo Zusammen, danke für eure Ausführungen. Der ESP hängt bei mir nicht im Internet, sondern wird nur local im Access Point Modus genutzt. Die Website die er bereit stellt dient als Steuer und Kontroll Übersicht für meine Anwendung. Wie schon erwähnt, geht es mir auch nicht unbedingt um eine https Verschlüsselung sondern nur darum, das ich den Application Cache des Browsers wieder verwenden kann (Das ging bis vor einem halben Jahr ohne Probleme, als die Browser ohne Einschrännkung die Verwendung des Applikation Caches zu ließen.). Dieser funktioniert nämlich nur, wenn der Browser über https mit dem Server kommunizieren kann. Evtl. hat noch einer ne Idee. Was mir auch helfen würde: Ein Tool, welches bestehenden html und javascript Code in eine Android App konvertiert. Danke und Grüße Theo
Ich verstehe nicht ganz wo das Problem ist, warum willst du unbedingt den Browsercache verwenden? Lass es doch weg. Wenn die Bilder eine anständige Komprimierung haben, werden die auch recht flot vom ESP geladen.
Eine Seite mit 8 Bildern, die als Buttons verwendet werden, lädt auch bei guter Komprimierung nur Stück für Stück. Das finde ich sehr unschön, deshalb der AppCache. Grüße
Theo schrieb: > Eine Seite mit 8 Bildern, die als Buttons verwendet werden, lädt auch > bei guter Komprimierung nur Stück für Stück. Das finde ich sehr unschön, > deshalb der AppCache. was verwendest du auf dem ESP als HTTP Server? Man kann auch alle Bilder in einer Bilddatei zusammenfassen und per CSS in jedem Button den entsprechenden Ausschnitt anzeigen - dann wird nur eine Bilddatei geladen und es erscheint bei allen gleichzeitig. Sascha
Guten Morgen Zusammen, danke für eure Tipps. Ich habe jetzt eine Android App geschrieben. Es werden nun alle Dateien lokal auf dem entsprechenden Gerät gehalten und es gehen nur noch XMLHttpRequests mit den dynamischen Daten an den Server und zurück. Funktioniert sehr gut. Grüße
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.