FHEM per HTTP Post oder Get abfragen -> State von Dummy Variablen abfragen

Begonnen von mueller_f, 30 März 2014, 10:03:05

Vorheriges Thema - Nächstes Thema

mueller_f

Hallo zusammen,

Ich möchte gerne DUMMY-Variablen in FHEM per HTTP Post oder Get abfragen. Der Befehl den ich per URL übergebe (list) wird auch korrekt ausgeführt, allerdings wird der komplette HTML-Code des Webfrontends d.h inkl menu zurückgeliefert. Mache ich etwas falsch? Gibt es eine Möglichkeit nur den "State" der Dummy-Variable zurück zu bekommen? Falls ja, könnte ein Wissender ein Beispiel posten?

Vielen Dank und Grüsse

Fabian

epsrw1

Ich habe keine Ahnung, aber davon wenigstens ganz viel

rudolfkoenig


mueller_f

Hallo Rudolf,

Danke! Das hatte ich gesucht!

Viele Gruesse

Fabian

FhemPiUser

alter Post, aber meine Frage bezieht sich auf das gleiche Thema:

ich nutze ebenfalls ein {Value("DummyName")} über http get von einem arduino aus und überlege, wie ich das möglichst gut absichern kann.

Aktuell nutze ich nur ein allowed_from IP. Das reicht mir aber eigentlich nicht, denn wenn jemand in LAN wireshark anschmeisst, die Source IP herausfindet und spoofed kann er alles mit fhem machen (basich auth nutzt nichts, da arduino kein https kann).

Idee wäre noch Einschränkung über allowedCommands. Ich finde aber keine Möglichkeit das weiter abzusichern, z.B. über allowedCommands den Zugriff auf {Value("DummyName")} einschränken, d.h. man kann nur "Value" als Perl-Befehl ausführen und nur den Value von DummyName abfragen.

Wäre evtl. die Einführung einer allowedCommandsPerlRegex möglich, womit man nur Perl-Kommandos erlaubt, die auf die regex matchen?

Andere Idee wäre ein allowed_from_MAC um noch die Source MAC zu prüfen.

Oder ein get bei einem dummy einzuführen und nur ein get zuzulassen...




amenomade

Du kannst auch ¨über allowedDevices einschränken, oder hat es keinen Einfluss auf Perl Befehle?

Meiner Meinung nach, gibt es aber eine dringendere Massnahme:
Zitatwenn jemand in LAN wireshark anschmeisst, die Source IP herausfindet und spoofed kann er alles mit fhem machen
Dringend: sicherstellen, dass solche böse Menschen nicht in deinem LAN kommen können.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

FhemPiUser

allowedDevices wirkt nicht in Perl Befehlen nach meinem Verständnis.

Klar tue ich alles dafür, dass keiner ins LAN kommt, aber darauf möchte ich mich nicht alleine verlassen. Was wenn jemand mein WLAN Pwd hackt, da gab es immer mal wieder Lücken im WPA... Mit der Argumentation bräuchte man ja im LAN für keinen Dienst irgendwelche Passwört oder https...

amenomade

Dann getstate aktivieren https://fhem.de/commandref_DE.html#getstate
getstate in allowedcommands hinzufügen

Aufrufen mit http://<fhemURL>:<port>/fhem?cmd=getstate%20DummyName
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

FhemPiUser

danke, gestate kannte ich nicht, das hat geklappt.

Trotzdem wäre evtl. ein allowed_from_MAC noch sinnvoll (wenn überhaupt möglich), um noch die Source MAC zu prüfen.

amenomade

ZitatTrotzdem wäre evtl. ein allowed_from_MAC noch sinnvoll (wenn überhaupt möglich), um noch die Source MAC zu prüfen.
Ich glaube nicht, dass es möglich ist. Das sind unterschiedlische Netzwerkschichte des OSI-Modell. Ethernet frame (wo die MAC Adresse steht) enthält IP Packet enthält http payload.
Und die MAC Adresse des Ethernet frames ändert sich bei jedem hop im Routing...
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus