Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. HomematicRPC 1.8 + REGA 2.0 testen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    HomematicRPC 1.8 + REGA 2.0 testen

    This topic has been deleted. Only users with topic management privileges can see it.
    • foxriver76
      foxriver76 Developer last edited by

      Moin moin,

      da sich mit den letzten CCU Firmware Updates einige Verbesserungen zum Thema Sicherheit ergeben haben, können hm-rpc und hm-rega nun über https mit eurer CCU kommunizieren. Hierzu in der jeweiligen Instanz auf den Tab "Zusätzliche Einstellungen" klicken und https aktivieren.

      Ebenfalls ist es möglich die Authentifizierung an der CCU (Firmware 3.41.11) zu aktivieren. Dazu unter der HTTPS Checkbox einen gültigen Usernamen sowie das zugehörige Passwort für einen CCU-User eintragen. Sowohl PW als auch Username werden bei Rega und RPC verschlüsselt gespeichert!

      Folgt hierzu den folgenden Schritten in der Weboberfläche der CCU:

      ! -> Einstellungen -> Systemsteuerung
      6392_bildschirmfoto_von_2018-11-28_22-54-07.png
      ! -> Menüpunkt "Sicherheit" anklicken
      6392_bildschirmfoto_von_2018-11-28_22-57-35.png
      ! -> "Authentifizierung" Checkbox aktivieren
      6392_bildschirmfoto_von_2018-11-28_22-57-42.png
      ! -> In den Einstellungen "Zentralenwartung" anklicken
      6392_bildschirmfoto_von_2018-11-28_22-59-37.png
      ! -> Neustart durchführen
      6392_bildschirmfoto_von_2018-11-28_22-59-43.png

      Nun kann der Zugriff auf die API nur noch mit gültigen Nutzername und Passwort erfolgen. Somit kann keiner in eurem Netzwerk die API ohne die korrekten Credentials ansteuern und eure Smart Home Welt ist ein Stück sicherer geworden.

      Die beiden Versionen sind erst mal zum Testen über GitHub erhältlich.

      Zusätzliche Informationen:

      ! Falls ihr in der CCU Firewall Ports blockiert habt, müsst ihr evtl. die entsprechenden Ports freigeben, die der Adapter nutzt (siehe hierzu Einstellungen der jeweiligen Instanz z. B. 42001 für RFD)
      ! Rega Port: 48181

      ! –> CCU WebUI --> Einstellungen --> Systemsteuerung --> Firewall konfigurieren --> Port Freigabe ausfüllen --> Ok drücken --> Neustart der CCU durchführen
      ! BIN-RPC und somit CuxD können bei aktiver Authentifizierung nicht betrieben werden.

      Wers nicht hin bekommt:

      https://www.youtube.com/watch?v=LaQtyf7dl9w&lc=z23jutrzkt2kcpiag04t1aokgmn3vuqyr2bgsglsq3fgrk0h00410

      Ich freue mich auf euer Feedback.

      beste Grüße

      fox

      W 1 Reply Last reply Reply Quote 0
      • F
        Flauschi last edited by

        Hi Fox,

        also…update ueber git von beiden Adaptern verlief korrekt. Funktionierte auch sofort. Ausser dass ich den CuxD Port 8701 in der Raspberrymatic freigeben musste, nach dem letzten Update.

        Nun habe ich mal die Auth angemacht, CCU neugestartet, HTTPS in den Instanzen eingeben....

        REGA verbindet sich korrekt, gibt aber dauerhaft folgende Warnung aus:

        hm-rega.1	2018-11-29 10:49:00.726	warn	Got unexpected ID: hm-rega.1.1239
        hm-rega.1	2018-11-29 10:49:00.553	warn	Got unexpected ID: hm-rega.1.1238
        hm-rega.1	2018-11-29 10:48:55.725	warn	Got unexpected ID: hm-rega.1.1239
        hm-rega.1	2018-11-29 10:48:55.552	warn	Got unexpected ID: hm-rega.1.1238
        hm-rega.1	2018-11-29 10:48:50.724	warn	Got unexpected ID: hm-rega.1.1239
        hm-rega.1	2018-11-29 10:48:50.553	warn	Got unexpected ID: hm-rega.1.1238
        hm-rega.1	2018-11-29 10:48:45.725	warn	Got unexpected ID: hm-rega.1.1239
        hm-rega.1	2018-11-29 10:48:45.553	warn	Got unexpected ID: hm-rega.1.1238
        hm-rega.1	2018-11-29 10:48:40.726	warn	Got unexpected ID: hm-rega.1.1239
        hm-rega.1	2018-11-29 10:48:40.552	warn	Got unexpected ID: hm-rega.1.1238
        hm-rega.1	2018-11-29 10:48:35.724	warn	Got unexpected ID: hm-rega.1.1239
        hm-rega.1	2018-11-29 10:48:35.552	warn	Got unexpected ID: hm-rega.1.1238
        

        der CuxD RPC bricht mit folgender Fehlermeldung den Anmeldeversuch ab:

        host.ioBroker	2018-11-29 10:48:32.405	info	Restart adapter system.adapter.hm-rpc.1 because enabled
        host.ioBroker	2018-11-29 10:48:32.405	error	instance system.adapter.hm-rpc.1 terminated with code 0 (OK)
        Caught	2018-11-29 10:48:32.405	error	by controller[0]: at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:335:16)
        Caught	2018-11-29 10:48:32.405	error	by controller[0]: at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-parser/index.js:251:12)
        Caught	2018-11-29 10:48:32.405	error	by controller[0]: at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
        Caught	2018-11-29 10:48:32.405	error	by controller[0]: at Decoder. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15)
        Caught	2018-11-29 10:48:32.405	error	by controller[0]: at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:345:8)
        Caught	2018-11-29 10:48:32.405	error	by controller[0]: at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
        Caught	2018-11-29 10:48:32.405	error	by controller[0]: at Manager. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15)
        Caught	2018-11-29 10:48:32.405	error	by controller[0]: at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:244:12)
        Caught	2018-11-29 10:48:32.405	error	by controller[0]: at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:319:9)
        Caught	2018-11-29 10:48:32.404	error	by controller[0]: at Socket.adapter.getForeignObject (/opt/iobroker/node_modules/iobroker.hm-rpc/hm-rpc.js:1498:29)
        Caught	2018-11-29 10:48:32.404	error	by controller[0]: TypeError: rpc.createSecureClient is not a function
        hm-rpc.1	2018-11-29 10:48:32.383	info	terminating
        hm-rpc.1	2018-11-29 10:48:32.378	error	at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:335:16)
        hm-rpc.1	2018-11-29 10:48:32.378	error	at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-parser/index.js:251:12)
        hm-rpc.1	2018-11-29 10:48:32.378	error	at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
        hm-rpc.1	2018-11-29 10:48:32.378	error	at Decoder. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15)
        hm-rpc.1	2018-11-29 10:48:32.378	error	at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:345:8)
        hm-rpc.1	2018-11-29 10:48:32.378	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
        hm-rpc.1	2018-11-29 10:48:32.378	error	at Manager. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15)
        hm-rpc.1	2018-11-29 10:48:32.378	error	at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:244:12)
        hm-rpc.1	2018-11-29 10:48:32.378	error	at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:319:9)
        hm-rpc.1	2018-11-29 10:48:32.378	error	at Socket.adapter.getForeignObject (/opt/iobroker/node_modules/iobroker.hm-rpc/hm-rpc.js:1498:29)
        hm-rpc.1	2018-11-29 10:48:32.378	error	TypeError: rpc.createSecureClient is not a function
        hm-rpc.1	2018-11-29 10:48:32.378	error	uncaught exception: rpc.createSecureClient is not a function
        hm-rpc.1	2018-11-29 10:48:32.370	info	binrpc client is trying to connect to 192.168.1.3:48701/ with ["xmlrpc_bin://192.168.1.19:18701","hm-rpc.1"]
        hm-rpc.1	2018-11-29 10:48:32.370	info	binrpc server is trying to listen on 192.168.1.19:18701</anonymous></anonymous></anonymous></anonymous>
        

        HM und HMIP bringen garnichts und verbinden sich nicht.

        nehme ich die Auth in der Raspberrymatic und den Instanzen raus, laeuft alles:

        hm-rpc.3	2018-11-29 10:55:56.006	info	new HmIP devices/channels after filter: 0
        hm-rpc.3	2018-11-29 10:55:55.986	info	xmlrpc <- newDevices 124
        hm-rpc.3	2018-11-29 10:55:55.422	info	xmlrpc -> 0 devices
        hm-rpc.3	2018-11-29 10:55:55.404	info	xmlrpc <- listDevices ["hm-rpc.3"]
        hm-rpc.3	2018-11-29 10:55:55.386	info	Connected
        hm-rpc.3	2018-11-29 10:55:55.347	info	xmlrpc client is trying to connect to 192.168.1.3:2010/ with ["http://192.168.1.19:12010","hm-rpc.3"]
        hm-rpc.3	2018-11-29 10:55:55.346	info	xmlrpc server is trying to listen on 192.168.1.19:12010
        hm-rpc.3	2018-11-29 10:55:55.147	info	starting. Version 1.8.0 in /opt/iobroker/node_modules/iobroker.hm-rpc, node: v8.13.0
        hm-rpc.3	2018-11-29 10:55:55.004	info	States connected to redis: 127.0.0.1:6379
        

        kann ich Dir noch weiter helfen?

        Gruss

        1 Reply Last reply Reply Quote 0
        • foxriver76
          foxriver76 Developer last edited by

          Den Fehler bei CuxD kann ich nachvollziehen, da BIN RPC verwendet wird, und da gibts wohl 'createSecureServer' nicht. Werde mich drum kümmern.

          UPDATE: Jens Maus zufolge, ist bei aktiver Auth BIN-RPC nur noch von localhost selbst möglich. Da sich die CuxD-Geräte allerdings nicht mittels XML-RPC steuern lassen, schaut es bei aktiver Authentifizierung schlecht aus. Ich habe mal angefragt, ob es hierfür ein Workaround gibt oder etwas in Planung ist. Falls nicht, werde ich es mindestens mit einer geeigneten Fehlermeldung abfangen.

          Sind die Ports für die anderen Instanzen korrekt gewählt? Normalerweise sollten diese mit einer zusätzlichen 4 starten, ansonsten mit den alten Ports übereinstimmen.

          Zu dem Rega Log, gibt es die entsprechenden Datenpunkte bei dir, die geloggt werden?

          1 Reply Last reply Reply Quote 0
          • F
            Flauschi last edited by

            korrekt, sobald ich auf HTTPs Stelle, werden die Ports vorne fuehrend mit einer 4 ergaenzt.

            Diese habe ich aber in der CCU Firewall nicht extra eingestellt, korrekt?

            Leider kann ich Dir aktuell keinen Screenshot hochladen. Es ist absichtlich port 8701 fuer CUXD freigebene und unten die IP des ioBrokers hinzugefuegt.

            1 Reply Last reply Reply Quote 0
            • foxriver76
              foxriver76 Developer last edited by

              @Flauschi:

              korrekt, sobald ich auf HTTPs Stelle, werden die Ports vorne fuehrend mit einer 4 ergaenzt.

              Diese habe ich aber in der CCU Firewall nicht extra eingestellt, korrekt?

              Leider kann ich Dir aktuell keinen Screenshot hochladen. Es ist absichtlich port 8701 fuer CUXD freigebene und unten die IP des ioBrokers hinzugefuegt. `

              Nein, musst du 'eigentlich' nichts extra einstellen. Zu CuxD siehe meine Änderung im vorherigen Post.

              Wundern tuts mich nur, dass sich hm-rpc (bei mir läuft HM-IP und RFD) bei dir nicht verbindet. Bei inkorrekten Logindaten müsste zumindest eine Fehlermeldung zurück kommen. Also wäre das schon mal auszuschließen.

              Hast du irgendwas spezielles in der HM-Firewall konfiguriert?

              Grundsätzlich: Nach GitHub Installation Uploads der Adapter durchgeführt?

              1 Reply Last reply Reply Quote 0
              • F
                Flauschi last edited by

                @foxriver76:

                Grundsätzlich: Nach GitHub Installation Uploads der Adapter durchgeführt? `

                natuerlich nicht. Mom 🙂

                1 Reply Last reply Reply Quote 0
                • F
                  Flauschi last edited by

                  also nach upload sieht die Rega gleich aus:

                  hm-rega.1	2018-11-29 12:15:30.728	warn	Got unexpected ID: hm-rega.1.1239
                  hm-rega.1	2018-11-29 12:15:30.552	warn	Got unexpected ID: hm-rega.1.1238
                  hm-rega.1	2018-11-29 12:15:25.725	warn	Got unexpected ID: hm-rega.1.1239
                  hm-rega.1	2018-11-29 12:15:25.559	warn	Got unexpected ID: hm-rega.1.1238
                  hm-rega.1	2018-11-29 12:15:20.725	warn	Got unexpected ID: hm-rega.1.1239
                  hm-rega.1	2018-11-29 12:15:20.553	warn	Got unexpected ID: hm-rega.1.1238
                  hm-rega.1	2018-11-29 12:15:15.725	warn	Got unexpected ID: hm-rega.1.1239
                  hm-rega.1	2018-11-29 12:15:15.552	warn	Got unexpected ID: hm-rega.1.1238
                  hm-rega.1	2018-11-29 12:15:15.250	info	ReGaHSS 192.168.1.3 up
                  

                  das sind 2 Systemvariablen (Anwesenheit) die ich per ioBroker Script setze.

                  CuXD lass ich mal aus, bis Du Rueckmeldung von Uwe bekommst.

                  HM RPC verbindet sich nicht:

                  hm-rpc.2	2018-11-29 12:18:49.596	info	xmlrpc client is trying to connect to 192.168.1.3:42001/ with ["http://192.168.1.19:12001","hm-rpc.2"]
                  hm-rpc.2	2018-11-29 12:18:49.596	info	xmlrpc server is trying to listen on 192.168.1.19:12001
                  hm-rpc.2	2018-11-29 12:18:49.321	info	starting. Version 1.8.0 in /opt/iobroker/node_modules/iobroker.hm-rpc, node: v8.13.0
                  hm-rpc.2	2018-11-29 12:18:49.180	info	States connected to redis: 127.0.0.1:6379
                  

                  gleiche fuer HMIP

                  Edit…ah nun kam der Timeout:

                  hm-rpc.2	2018-11-29 12:21:29.970	error	init error: Error: connect ETIMEDOUT 192.168.1.3:42001
                  

                  Edit(h)2….in der Firewall hab ich oben den 8701 Port und unten mein gateway/router: 192.168.1.1 und den ioBroker 192.168.1.19 eingetragen.

                  1 Reply Last reply Reply Quote 0
                  • foxriver76
                    foxriver76 Developer last edited by

                    Habe es parallel auf einem anderen System aufgesetzt und laufe auch in das Problem, also werde es mir heute anschauen.

                    Denke, die Logs von Rega kommen, da er Änderungen bekommt zu denen keine Instanz aktiv läuft.

                    1 Reply Last reply Reply Quote 0
                    • F
                      Flauschi last edited by

                      wunderbar. dann stell ich mal wieder fix zurueck und warte auf Frohe Kundt von Dir 🙂

                      Danke nochmal, fuer Deinen Einsatz!

                      1 Reply Last reply Reply Quote 0
                      • foxriver76
                        foxriver76 Developer last edited by

                        Es scheint irgendwie noch an den Sicherheitseinstellungen zu hapern:

                        Rufe ich die funktionale CCU auf unter:

                        https://<ip>:42001</ip>
                        

                        kommt korrekterweise eine Abfrage der Credentials.

                        Bei der nicht funktionalen lädt er sich tot –> Timeout.

                        Funktionierende CCU:

                        # iptables -L -n | grep 2001
                        ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:2001 state NEW
                        ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:42001 state NEW
                        
                        

                        Nicht-funktionierende CCU:

                        # iptables -L -n | grep 2001
                        ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:2001 state NEW
                        
                        

                        Über die UI sind sie identisch konfiguriert, intern anscheinend nicht.

                        1 Reply Last reply Reply Quote 0
                        • F
                          Flauschi last edited by

                          hast Du eine CCU3 oder eine Raspberrymatic?

                          Evtl quatscht Du mal Jens an?

                          1 Reply Last reply Reply Quote 0
                          • foxriver76
                            foxriver76 Developer last edited by

                            @Flauschi:

                            hast Du eine CCU3 oder eine Raspberrymatic?

                            Evtl quatscht Du mal Jens an? `

                            Problem schon gelöst, der Port muss anscheinend explizit in der Firewall freigegeben werden. Dann läuft es.

                            Bei meiner Ursprungsinstallation musste ich das nicht tun, allerdings hatte ich da auf die Version vom 24.11 und dann auf die vom 26.11 geupgradet, bei der anderen direkt 26.11 (könnte evtl zu den Inkonsistenzen zwischen den Systemen geführt haben).

                            Und kannst du bitte die CuxD Instanz ohne Authentifizierung konfigurieren und schauen ob dann alles läuft?

                            1 Reply Last reply Reply Quote 0
                            • F
                              Flauschi last edited by

                              ich hab auch die Version vom 24.11. uebersprungen. Somit erklaerbar.

                              Das heisst ich muss 42001, 42010 und 48701 (sofern Du das mit CuXD hinbekommst) freigeben, wenn ich die Auth nutzen moechte?

                              Ich lass das nun aber erstmal auf normal, bis da was wegen CuXD rauskommt, da ich das schon gerne verwenden wuerde 🙂

                              1 Reply Last reply Reply Quote 0
                              • foxriver76
                                foxriver76 Developer last edited by

                                @Flauschi:

                                ich hab auch die Version vom 24.11. uebersprungen. Somit erklaerbar.

                                Das heisst ich muss 42001, 42010 und 48701 (sofern Du das mit CuXD hinbekommst) freigeben, wenn ich die Auth nutzen moechte?

                                Ich lass das nun aber erstmal auf normal, bis da was wegen CuXD rauskommt, da ich das schon gerne verwenden wuerde 🙂 `

                                Kannst du bitte die CuxD Instanz ohne Authentifizierung konfigurieren und schauen ob dann alles läuft? Also einfach den Haken bei Https weg in der CuxD Instanz.

                                Und für CuxD wird es dann weiterhin 8701 sein.

                                1 Reply Last reply Reply Quote 0
                                • F
                                  Flauschi last edited by

                                  ok, funktioniert erstmal.

                                  Alle Adapter sind gruen.

                                  Habe gerade HMIP, HM und CUXD geschalten ausm ioBroker. Geht.

                                  Bekam aber die Fehlermeldung der REGA:

                                  hm-rega.1	2018-11-29 13:53:55.954	error	CCU 192.168.1.3 unreachable
                                  hm-rega.1	2018-11-29 13:53:55.954	error	post request error: connect ETIMEDOUT 192.168.1.3:48181
                                  

                                  was soll denn auf 48181 laufen?

                                  und ich bekomme weiterhin:

                                  hm-rega.1	2018-11-29 13:52:45.725	warn	Got unexpected ID: hm-rega.1.1239
                                  hm-rega.1	2018-11-29 13:52:45.551	warn	Got unexpected ID: hm-rega.1.1238
                                  

                                  durch meine Scripte. Script aus = keine Meldung mehr.

                                  Magst Du mal ein Script anlegen bei Dir, das eine CCU Systemvariable beschreibt und schauen, ob Du dann auch die Meldung bekommst?

                                  1 Reply Last reply Reply Quote 0
                                  • foxriver76
                                    foxriver76 Developer last edited by

                                    Also 48181 ist der SSL Port der Rega selbst.

                                    Ich habe Skripte laufen, allerdings habe ich keine hm-rpc CuxD Instanz.

                                    Werde später weiter drüber schauen und auch im Frontend automatisch https unchecken und disablen wenn jemand auf bin-rpc umschaltet.

                                    1 Reply Last reply Reply Quote 0
                                    • F
                                      Flauschi last edited by

                                      CUXD sollte allerdings beim direkten setzen von Systemvariablen gar nicht beteiligt sein?

                                      OK, das heisst ich nehme den 48181 mal mit in die Firewall Regel auf…so langsam mach ich mir das System wieder auf 🙂

                                      1 Reply Last reply Reply Quote 0
                                      • foxriver76
                                        foxriver76 Developer last edited by

                                        Naja der Port ist dann zugänglich, scheint allerdings so als wäre er das auch so. Trotzallem muss sich an der API authentifiziert werden.

                                        Konnte es auf der anderen Installation nachstellen, lag wohl doch wieder daran dass der Rega Port auch in die CCU Firewall muss.

                                        1 Reply Last reply Reply Quote 0
                                        • foxriver76
                                          foxriver76 Developer last edited by

                                          Frontend sollte nun bei bin-rpc automatisch HTTPS deaktivieren.

                                          1 Reply Last reply Reply Quote 0
                                          • F
                                            Flauschi last edited by

                                            btw, nach dem 48181 Port in die Firewall bekomme ich auch kein WARN mehr durch die Systemvariable.

                                            Was nun noch bei mir ist, dass in der Instanzeinstellung die Textboxen ueber den Ueberschriften liegen und erst mit einem Klick, die Ueberschrift dann ueber die Textbox wandert.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            561
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            10
                                            83
                                            11470
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo