Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. remiinD

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Profile
    • Following 0
    • Followers 0
    • Topics 5
    • Posts 6
    • Best 0
    • Groups 1

    remiinD

    @remiinD

    Starter

    0
    Reputation
    7
    Profile views
    6
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    remiinD Follow
    Starter

    Latest posts made by remiinD

    • Tuya TT001ZAV20 mit Zigbee EZSP adapter

      Hallo Zusammen,

      ich habe ein Problem mit meinen neu gekauften Temperatur und Feuchtigkeitssensoren.
      Diese Tuya TT001ZAV20 sind günstig von AliExpress erstanden und lassen sich auch verbinden mit dem Zigbee Adapter.

      Hier die Daten zum Zigbee Stick:

      Generic Zigbee EZSP adapter detected:
      Firmware: 6.10.3-41
      EZSP v8
      efr32mg21 Chip

      Initial verbinden die Sensoren sich und kriegen zumindest die Batteriespannung von 2,4 V mit (wo ich mich frage, wieso die keine 3 V kriegen wenn die Batterien grade neu sind)
      Aber weder die Temperatur, noch die Feuchtigkeit werden angezeigt:

      Screenshot 2024-01-12 171036.png

      Die Link-Qualität steht in dem Screenshot bei 10, startet jedoch jedes mal bei 240.
      In den Objekten sieht das ganze gleich aus.

      Hat jemand Erfahrung mit diesen Sensoren, im Idealfall noch mit der Kombi?

      Edit: Wenn ich auf Reconfigure klicke kriege ich folgende Log Meldung:

      DeviceConfigure:Failed to DeviceConfigure.configure 0x000d6ffffe65a423 RH3052 (TypeError: mappedDevice.configure is not a function at DeviceConfigure.doConfigure (/opt/iobroker/node_modules/iobroker.zigbee/lib/zbDeviceConfigure.js:133:36) at processTicksAndRejections (node:internal/process/task_queues:95:5) at async Promise.all (index 0) at Commands.reconfigure (/opt/iobroker/node_modules/iobroker.zigbee/lib/commands.js:519:21))
      

      Vielen Dank !

      posted in ioBroker Allgemein
      remiinD
      remiinD
    • Blockly Switch Cases mit Regex überprüfen

      Hallo zusammmen,

      Ich probiere grade mit Blockly rum und finde keine Lösung für mein Problem:
      Ich würde gerne mittels Switch auf zwei bestimmte Wörter prüfen. Was jedoch davor und danach kommt ist egal.
      Wahrscheinlich gibts eh ne einfachere Lösung. 🙂

      Bsp: "küchen lampe" muss vorkommen. Ob davor noch "mach die" und danach "aus" oder "an" kommt ist egal.
      Anschließend soll ein Objekt seinen Zustand ändern.

      Folgender Aufbau:

      blockly.png

      Ich will nicht für jedes an und aus einen eingenen Case haben, wie es für das Aquarium aufgebaut ist, sondern wie gesagt mittels Regex nur auf das Gerät prüfen und umschalten.

      Danke und Viele Grüße

      Daniel

      posted in Blockly
      remiinD
      remiinD
    • admin Adapter funktioniert nicht sobald anderes Zertifikat

      Hallo zusammen,

      Sobald ich ein selbst signiertes Zertifikat und dessen Key im Admin Adapter einspiele, crashed die Admin Instanz und kommt nicht mehr hoch. Muss dann die Admin Instanz löschen und neu hinzufpgen via CLI.

      Im Log steht folgendes:

      2022-04-13 22:27:06.176  - ^[[32minfo^[[39m: host.iobroker instance system.adapter.admin.0 started with pid 16925
      2022-04-13 22:27:07.931  - ^[[32minfo^[[39m: admin.0 (16925) starting. Version 5.3.4 in /opt/iobroker/node_modules/iobroker.admin, node: v12.22.12, js-controller: 4.0.21
      2022-04-13 22:27:07.984  - ^[[32minfo^[[39m: admin.0 (16925) requesting all states
      2022-04-13 22:27:07.985  - ^[[32minfo^[[39m: admin.0 (16925) requesting all objects
      2022-04-13 22:27:08.404  - ^[[32minfo^[[39m: admin.0 (16925) received all objects
      2022-04-13 22:27:08.575  - ^[[32minfo^[[39m: admin.0 (16925) http server listening on port 8081
      2022-04-13 22:27:08.576  - ^[[32minfo^[[39m: admin.0 (16925) Use link "http://localhost:8081" to configure.
      
      

      nach dem Versuch einen manuellen neustarts über iobroker restart/start admin.0 kommt folgendes:

      2022-04-13 22:35:43.870  - ^[[32minfo^[[39m: admin.0 (17307) starting. Version 5.3.4 in /opt/iobroker/node_modules/iobroker.admin, node: v12.22.12, js-controller: 4.0.21
      2022-04-13 22:35:43.990  - ^[[32minfo^[[39m: admin.0 (17307) requesting all states
      2022-04-13 22:35:43.991  - ^[[32minfo^[[39m: admin.0 (17307) requesting all objects
      2022-04-13 22:35:44.451  - ^[[32minfo^[[39m: admin.0 (17307) received all objects
      2022-04-13 22:35:44.580  - ^[[31merror^[[39m: admin.0 (17307) Cannot create web-server: Error: error:0909006C:PEM routines:get_name:no start line
      2022-04-13 22:35:44.582  - ^[[32minfo^[[39m: admin.0 (17307) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
      2022-04-13 22:35:45.098  - ^[[32minfo^[[39m: admin.0 (17307) terminating https server on port 8081
      2022-04-13 22:35:45.133  - ^[[31merror^[[39m: host.iobroker instance system.adapter.admin.0 terminated by request of the instance itself and will not be restarted, before user restarts it.
      2022-04-13 22:35:45.134  - ^[[32minfo^[[39m: host.iobroker Do not restart adapter system.adapter.admin.0 because desired by instance
      

      Habe das Zertifikat auf einer Linux Maschine per openssl erstellt.

      Hierzu habe ich folgenden Guide befolgt:


      Privater Schlüssel und CSR erstellen
      Für jede Zertifikatsanforderung müssen zunächst ein privater Schlüssel und ein CSR erstellt werden. Das geht am einfachsten, in dem pro Domain zunächst eine Konfigurationsdatei mit den notwendigen Daten erstellt wird.

      Als Domainname verwende ich in den Beispielen test.example.private.

      Die Konfigurationsdatei sieht dann wie folgt aus:

      [req]  
      default_bits = 2048   
      prompt = no  
      default_md = sha256 
      distinguished_name = dn
      [dn]
      C=DE
      ST=NRW
      L=MeinOrt
      O=MeinName
      emailAddress=webmaster@example.private
      CN = test.example.private
      

      Der gewünschte Domainname steht in der letzten Zeile. Für eine andere Domain muss nur diese Zeile angepasst werden.

      Ich würde aber auch für die anderen Werte im Bereich [dn] passende Werte eintragen.

      Ich habe die Konfigurationsdatei unter dem Dateinamen test.example.csr.cnf gespeichert.

      Der CSR und der private Schlüssel werden dann mit diesem Befehl erstellt:

      openssl req -new -sha256 -nodes \    
                  -out test.example.csr \    
                  -newkey rsa:2048 -keyout test.example.key \    
                  -config test.example.csr.cnf
      

      Der private Schlüssel wird in der Datei test.example.key abgelegt. Er wird später auch für die Konfiguration des (Web)Servers benötigt.

      Der CSR befindet sich in der Datei test.example.csr. Für die Erzeugung des Zertifikats wird nur der CSR benötigt.

      Server-Zertifikat erstellen
      Für die Erstellung des Server-Zertifikats wird zunächst eine weitere Konfigurationsdatei erstellt:

      authorityKeyIdentifier=keyid,issuer
      basicConstraints=CA:FALSE
      keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
      subjectAltName = @alt_names
      [alt_names]
      DNS.1 = test.example.private
      

      Auch hier muss für andere Domains nur jeweils die letzte Zeile angepasst werden. Der Eintrag in dieser Zeile muss unbedingt exakt dem Eintrag CN in der Konfigurationsdatei für die CSR-Erstellung entsprechen.

      Die Konfigurationsdatei habe ich unter dem Namen test.example.ext.cnf gespeichert. Neben dieser Konfigurationsdatei und der CSR-Datei werden auch das Zertifikat und der private Schlüssel der CA benötigt.

      Die Erstellung des Zertifikats erfolgt mit dem folgenden Befehl:

      openssl x509 -req -in test.example.csr \  
                   -CA myRoot.crt -CAkey myRoot.key -CAcreateserial \  
                   -extfile test.example.ext.cnf \  
                   -out test.example.crt -days 3650 -sha256
      

      Das neu erzeugte Zertifikat ist in diesem Bespiel 10 Jahre (= 3650 Tage) gültig und wird in der Datei test.example.crt gespeichert. Der Inhalt des Zertifikats kann durch Aufruf des Befehls

      openssl x509 -in test.example.crt -text -noout
      

      überprüft werden. Wichtig sind die folgenden Einträge:

      X509v3 extensions:
          ...
          X509v3 Subject Alternative Name:
              DNS:test.example.private
      

      Es müssen unbedingt die “X509v3 extension” vorhanden sein und der “Subject Alternative Name” muss dem Domainnamen entsprechen.

      Vielleicht hat ja jemand ne Idee.
      Hatte auch schon den Gedanken, dass ich hier einen Fehler eingebaut habe, aber habe es 3 mal durchgeführt ohne Erfolg.

      Gruß

      Daniel

      posted in ioBroker Allgemein
      remiinD
      remiinD
    • RE: PortForwarding doch gar nicht so schlimm!?

      @BBTown Moohohohment. 🙂

      Du musst hier unterscheiden, was mein privates Empfinden ist und was ich Beruflich mache. Natürlich würde ich keinem Kunden empfehlen Portfreigaben zu machen (Es sei denn es ist ein Webserver in der DMZ oder ähnliches wo es fast gar nicht anders geht).

      Vertrauen musst du mir nicht. Das habe ich ja auch gar nicht erwartet /verlangt 😄

      Ich wollte wissen wie ihr das Risiko einschätzt mit (bestenfalls) Beispielen dafür was schief laufen kann. (Auch wenn mir das bewusst ist das da Dinge schief laufen können).

      Gruß

      Remiind

      posted in ioBroker Allgemein
      remiinD
      remiinD
    • PortForwarding doch gar nicht so schlimm!?

      Hallo liebe Community,

      ich habe mir ne menge Gedanken über das Thema gemacht und mit ein paar Kollegen gesprochen (Systemhaus für Netzwerk und Security) die seit mehreren Jahrzenten dem Unternehmen beiwohnen.

      VORWEG: DIES IST KEINE EMPFEHLUNG AN ALLE HIER PORTFORWARDING EINZUSCHALTEN WENN MAN SICH NICHT 100% IM KLAREN IST WAS MAN TUT. RISIKO BESTEHT IMMER!!!!!!! -
      (Das tut es immer und überall, auch wenn du auf die Straße gehst 😉 )

      Ich und die Kollegen sind zu dem Entschluss gekommen, dass Portforwarding (!!! BEI EINHALTUNG GEWISSER STANDARDS!!!) gar kein so großes Problem darstellt (vor allem bei Systemen wie dem Raspberry, der regelmäßig von der Raspi-Foundation aktuell gehalten wird etc.)

      Ich habe auf meiner FritzBox (die auch regelmäßige Updates erhält) Portforwarding auf Admin, VIS und SSH aktiviert. Dazu muss ich sagen die Passwörter die ich für die einzelnen Services gewählt habe unterscheiden sich, und sich mit einem Wildwuchs aus kryptischen Zeichen-,Zahlen- und Sonderzeichenketten (nahezu) unknackbar, sollte ich nicht auf Fishing Websites reinfallen...

      Eigene Portfreigaben zu öffnen habe dem Raspberry in der FirtzBox nicht gestattet.
      Mein Raspberry bekommt per Cron alle 6 Stunden ein Update und Upgrade verpasst. Außerdem ist fail2ban aktiv mit blockings von 14 Tagen und maximal 2 versuchen sich anzumelden. Das ganze läuft aktuell nur bei SSH aber wird noch ausgeweitet auf den Node.js Webserver für HTTPS. Und ja ich sehe auch regelmäßig ein paar "einsame" IPs sich auf meinen Raspberry verirren, die aber spätestens nach dem zweiten Versuch geblockt werden.

      Anfangs war ich ebenfalls über VPN angebunden, ich fand es jedoch immer zu umständlich "nur um mal eben das Licht auszumachen" oder den Stromverbrauch im VIS zu checken den VPN anzuschalten. Den Cloud adapter will ich nicht nutzen. Reicht mir schon, dass Alexa weiss was ich an Musik höhre 😄

      Domain gekauft, LetsEncrypt Zertifikat auf dem Raspi installiert und ab dafür. Von überall erreichbar.

      EDIT: Außerdem checke ich Berufsbedingt regelmäßig CVEs.

      Jetzt will ich eigentlich nur von Euch (hoffentlich auch der ein oder andered der ebenfalls im Network / Security Bereich tätig sind) mal höhren wie Ihr die Gefahr von Portforwardings auf den IOBroker seht. Viele Meinungen gehen ja schon aus vergangenen Threads einher aber trotzdem würde mich das >>aktuell<< mal interessieren.

      Viele Grüße

      Remiind.

      posted in ioBroker Allgemein
      remiinD
      remiinD
    • contrib-amazon-echo und Lampen Dimmen

      Hallo zusammen,

      ich habe aktuell ein Problem mit node-red welches verhindert, dass ich ein ZigBee gerät (angeschlossen an Alexa) dimmen kann.

      Folgendes HW Setup: Ein Shelly hinter dem Lichtschalter. Dieser soll über On/off gesteuert werden (funktioniert auch ohne probleme) nebenbei möchte ich aber noch Innr Lampen (in den Fassungen) dimmen können.

      Ich nutze node-red-contrib-amazon-echo in der Version 0.1.9.

      Hier der Flow:
      flow.png

      hier die func dimm:

      newMsg = { payload: msg.bri } ;
      return newMsg;
      

      Die iobroker outs sind lediglich die alexa2.0 Objekte zum Einstellen der Helligkeit.

      Wie schon erwähnt an/aus funktioniert.
      Wenn ich jedoch sage: "Alexa mach die schlafzimmerlampe auf 50%", geht der wert in node-red auf 128 (bei 100% auf 256, 25% auf 32, ..., etc.) An der Lampe tut sich jedoch live nur manchmal was und der Wert im Onjektebrowser auf dem IOBroker springt auf random Werte. So random, dass ich manchmal nachdem ich 70% gesagt habe, 3 % sage und die lampen werden heller 😵

      What am i doing wrong?

      Gruß

      remiinD

      posted in Node-Red
      remiinD
      remiinD
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo