Hallo,
ich habe fhem mittlerweile mit https konfiguriert.
Dazu habe ich ein selbstsigniertes Zertifikat erstellt, d.h. wenn ich die FHEM-Seite öffne, kommt die Sicherheitsabfrage von unbekanntem Zertifizierer.
Jetzt habe ich noch eine Funktionalität, die mir Fotos auf dem Android-TV mit GetHttpFile (Http-Utils) anzeigt und dazu die Fotos per URL einbindet.
Ich habe die URLs mit https angepasst, aber jetzt funktioniert es nicht mehr.
Wie kann ich Image-URLs, die auf den FHEM-Server zeigen verwenden?
Ich habe es mit mini-httpd als zusätzlichen WebServer probiert, aber anscheinend werden URLs automatisch auf https weitergeleitet.
(da fehlt mir Kenntnis über WebServer ::)).
Freue mich über Rückmeldungen,
Carsten
ZitatDazu habe ich ein selbstsigniertes Zertifikat erstellt
Das sollte seit ca. einem halben Jahr ueberfluessig sein: wenn openssl installiert ist, und kein Zertifikat vorhanden ist, legt FHEM automatisch ein selbstsigniertes Zertifikat an. Genauer gesagt dann, wenn ein Modul mit dem FHEM-Framework einen SSL gesicherten Serverport oeffnet.
ZitatIch habe die URLs mit https angepasst, aber jetzt funktioniert es nicht mehr.
Wenn eine qualifizierte Hilfe erwartet wird, dann sollten beide Halbsaetzte und den Satz davor deutlich genauer beschrieben werden, mit Fehlermeldungen, Code-Stuecken, notfalls Screenshots usw.
Solange kann ich nur mitfuehlen, und mein Bedauern ausdruecken. :)
Vielen Dank für die Rückmeldung zu meiner Fragestellung - leuchtet mir ein !
Also:
Urspungszustand HTTP
- Ich verwende Notifications for AndroidTV, um Texte UND Bilder auf dem TV anzuzeigen
- Funktioniert wie gewünscht und erwartet
NEU: Ich habe FHEM auf HTTPS umgestellt
- FHEM funktioniert (mittlerweile habe ich Rudolf's Hinweis bzgl. selbstsigniertem Key auch nachvollziehen können (/opt/fhem/certs enthält server-cert.pem und server-key.pem).
- Den Image-Parameter zu Notifications on AndroidTV habe ich von http auf https umgestellt
- Text-Bestandteil der Benachrichtigung erscheint
- Image-Bestandteil der Benachrichtigung erscheint NICHT
- Ich habe das Image (wird als URL übergeben) direkt im Browser geöffnet: Dort kommt dieselbe Abfrage wie bei der FHEM-Seite
Error Code: DLG_FLAGS_INVALID_CA
DLG_FLAGS_SEC_CERT_CN_INVALID
Ich nehme an, dass bei Aufruf von GetHttpFile so ziemlich das gleiche Verfahren abläuft, jedoch niemand da ist, der dann sagen kann: "mach weiter"...
Daher habe ich nun versucht, Cool Tux's Anleitung mit eigener Zertifizierungsstelle (https://wiki.fhem.de/wiki/FHEM_mit_HTTPS_SSL-Zertifikat_und_eine_eigene_Zertifizierungsstelle) umzusetzen.
Das hat bislang noch nicht vollständig funktioniert und ich such enoch nach Fehlerquellen.
Evtl. beißt sich das selbstsignierte Zertifikat mit dem manuell erstellen?
Ich formuliere die Frage um, bitte korrigiere mich, wenn ich falsch liege:
AndroidTV akzeptiert keine selbstsignierten Zertifikate, die Google-Suche hilft nicht, weiss jemand, wie man das umgeht?
Das mit der Hilfe der verlinkten Anleitung erzeugte Zertifikat hat die gleichen Probleme, wie das von FHEM automatisch erstellte: AndroidTV (er)kennt den Aussteller des Zertifikats nicht. Und ich kann leider nicht helfen.
Off-Topic: ich empfinde es als illoyal, wenn mein erworbenes Geraet mir nicht vertraut, mir unbekannten aber schon.
Vielen Dank für Deinen Input zu meiner vielleicht etwas schrägen Fragestellung :D
Zumindest sind meine Vermutungen damit bestätigt und ich kann mir Gedanken über einen anderen Ansatz machen.
Da ich Proxmox verwende und noch etwas Luft (Speicher-Ressourcen) habe, werde ich evtl. eine kleine Maschine mit einem HTTP-Server aufsetzen, die dann über HTTP die Dateien zur Anzeige bringen kann.
Ist nicht elegant, aber ich habe dann die Images (z.B. von Türklingel) wieder auf dem TV.
Was spricht den gegen das Anlegen einer weiteren, stark eingeschränkten FHEMWEB-Instanz, welche nicht https verwendet?
HTTPS macht doch nur den Verkehr unleserlich für Dritte. D.h. wenn die Bilder jetzt nicht zu sensibel sind, ist das erst einmal kein Problem.
Und wenn User/Passwort mitgelesen wird, dann für eine Instanz welche wenig Devices (allowedDevices) mit wenigen Kommandos (allowedCommands) bedienen darf.
Das hatte ich so, bis ich in der von mir verwenden App "Http Shortcuts" irgendwo in den Optionen einen Punkt "jegliche Zertifikate akzeptieren (wenn Du weißt, was Du tust)" gefunden hatte.
Danke laberlaib,
das hört sich nach dem an, was ich brauche.
Werde ich asap ausprobieren.
genau, was ich gesucht hatte!