NEWS


  • Hallo Community,

    wie im Titel schon erwaehnt habe ich auf meinem System Debian 9 zu 10 ein Upgrade durchgefuehrt, was bis auf meinen ioBroker erfolgreich gewesen ist.

    Nun sitze ich dabei den Dienst wieder ans laufen zu bekommen und hoffe vielleicht auf den einen oder anderen Hinweis, was ich uebersehe. Der Dienst laesst sich via sudo iobroker start zumindest ohne Fehlermeldung starten.

    Die Ausgabe von z.B. ps -aux|grep gibt mir folgendes aus:

    iobroker.js-controller
    io.discovery.0
    io.cloud.0
    io.mqtt.0
    io.web.0
    

    Auf die Visualisierung kann ich auch auf Port 8082 ohne Probleme dann zugreifen nur laeuft das Webinterface auf Port 8081 nicht, sowohl HTTP als auch HTTPS moechten sich nicht ansprechen lassen ohne entsprechenden Dienst.

    Die Eingabe von iobroker update und upgrade self zeigen zwar noch es waeren Adapter zur Aktualisierung vorhanden Upgradable wird quittiert mit einem

    sudo iobroker upgrade self
    Host is up to date.
    

    Nun habe ich mal ein wenig in die Log-Dateien geschaut, /opt/iobroker/log/ und dort sind diverse Eintraege die anscheinend darauf hinweisen wo es zu klemmen scheint.

    Ein sudo iobroker list instances zeigt mir folgende Ausgabe, die Bindings der Adressen sind korrekt:

      system.adapter.admin.0                 : admin       -  enabled, port: 8081, bind: 10.0.0.2 (SSL), run as: admin
    + system.adapter.cloud.0                 : cloud       -  enabled
    + system.adapter.discovery.0             : discovery   -  enabled
      system.adapter.flot.0                  : flot        -  enabled
    + system.adapter.mqtt.0                  : mqtt        -  enabled, port: 1883
      system.adapter.sql.0                   : sql         -  enabled, port: 0
      system.adapter.vis.0                   : vis         -  enabled
    + system.adapter.web.0                   : web         -  enabled, port: 8082, bind: 10.0.0.2, run as: admin
    
    + instance is alive
    

    Der entsprechende Port 8081 wird auch von keiner anderen Anwendung/Dienst belegt.

    Daraufhin habe ich mal den Installations-Fixer curl -sL https://raw.githubusercontent.com/ioBroker/ioBroker/stable-installer/fix_installation.sh | bash -gestartet, dieser gibt mit aber nichts negatives zurueck:

    ==========================================================================
    
        Welcome to the ioBroker installation fixer!
        Script version: 2019-07-03
    
        You might need to enter your password a couple of times.
    
    ==========================================================================
    
    
    ==========================================================================
        Installing prerequisites (1/3)
    ==========================================================================
    
    
    ==========================================================================
        Checking ioBroker user and directory permissions (2/3)
    ==========================================================================
    
    Created /etc/sudoers.d/iobroker
    Fixing directory permissions...
    
    ==========================================================================
        Checking autostart (3/3)
    ==========================================================================
    
    Enabling autostart...
    Autostart enabled!
    
    ==========================================================================
    
        Your installation was fixed successfully
        Run iobroker start to start ioBroker again!
    
    ==========================================================================
    
    

    Bis jetzt wuerde ich noch sagen ohne Auffaelligkeiten?!

    Nun wende ich meinen Blick in die aktuelle Log-Datei im Verzeichnis /opt/iobroker/log/
    Nur werde ich aus der Passage mit dem zu 'kurzen Schluessel' nicht ganz schlau?.

    2019-07-07 17:00:45.287  - info: admin.0 starting. Version 3.6.0 in /opt/iobroker/node_modules/iobroker.admin, node: v10.16.0
    2019-07-07 17:00:45.322  - info: admin.0 Request actual repository...
    2019-07-07 17:00:45.348  - info: admin.0 requesting all states
    2019-07-07 17:00:45.350  - info: admin.0 requesting all objects
    2019-07-07 17:00:45.421  - info: host.blackhole Update repository "default" under "http://download.iobroker.net/sources-dist.json"
    2019-07-07 17:00:45.436  - info: admin.0 received all states
    2019-07-07 17:00:45.499  - info: admin.0 received all objects
    2019-07-07 17:00:45.503  - warn: admin.0 No repository source configured
    2019-07-07 17:00:45.619  - error: admin.0 uncaught exception: error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small
    2019-07-07 17:00:45.619  - error: admin.0 Error: error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small
        at Object.createSecureContext (_tls_common.js:135:17)
        at Server (_tls_wrap.js:870:27)
        at new Server (https.js:62:14)
        at Object.createServer (https.js:85:10)
        at Object.createServer (/opt/iobroker/node_modules/iobroker.js-controller/lib/letsencrypt.js:174:39)
        at __construct (/opt/iobroker/node_modules/iobroker.admin/lib/web.js:446:32)
        at new Web (/opt/iobroker/node_modules/iobroker.admin/lib/web.js:477:7)
        at getData (/opt/iobroker/node_modules/iobroker.admin/main.js:388:39)
        at Socket.adapter.objects.getObjectList (/opt/iobroker/node_modules/iobroker.admin/main.js:441:35)
        at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9)
    2019-07-07 17:00:45.620  - info: admin.0 terminating https server on port 8081
    2019-07-07 17:00:45.633  - info: admin.0 terminating
    2019-07-07 17:00:45.660  - error: Caught by controller[0]: Error: error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small
    2019-07-07 17:00:45.660  - error: Caught by controller[0]:     at Object.createSecureContext (_tls_common.js:135:17)
    2019-07-07 17:00:45.661  - error: Caught by controller[0]:     at Server (_tls_wrap.js:870:27)
    2019-07-07 17:00:45.661  - error: Caught by controller[0]:     at new Server (https.js:62:14)
    2019-07-07 17:00:45.661  - error: Caught by controller[0]:     at Object.createServer (https.js:85:10)
    2019-07-07 17:00:45.661  - error: Caught by controller[0]:     at Object.createServer (/opt/iobroker/node_modules/iobroker.js-controller/lib/letsencrypt.js:174:39)
    2019-07-07 17:00:45.661  - error: Caught by controller[0]:     at __construct (/opt/iobroker/node_modules/iobroker.admin/lib/web.js:446:32)
    2019-07-07 17:00:45.661  - error: Caught by controller[0]:     at new Web (/opt/iobroker/node_modules/iobroker.admin/lib/web.js:477:7)
    2019-07-07 17:00:45.662  - error: Caught by controller[0]:     at getData (/opt/iobroker/node_modules/iobroker.admin/main.js:388:39)
    2019-07-07 17:00:45.662  - error: Caught by controller[0]:     at Socket.adapter.objects.getObjectList (/opt/iobroker/node_modules/iobroker.admin/main.js:441:35)
    2019-07-07 17:00:45.662  - error: Caught by controller[0]:     at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9)
    2019-07-07 17:00:45.662  - error: host.blackhole instance system.adapter.admin.0 terminated with code 0 (OK)
    2019-07-07 17:00:45.662  - info: host.blackhole Restart adapter system.adapter.admin.0 because enabled
    2019-07-07 17:00:57.714  - info: host.blackhole instance system.adapter.sql.0 started with pid 5163
    2019-07-07 17:00:58.425  - error: Caught by controller[0]: internal/modules/cjs/loader.js:805
    2019-07-07 17:00:58.425  - error: Caught by controller[0]:   return process.dlopen(module, path.toNamespacedPath(filename));
    2019-07-07 17:00:58.426  - error: Caught by controller[0]:                  ^
    2019-07-07 17:00:58.426  - error: Caught by controller[0]: Error: The module '/opt/iobroker/node_modules/mmmagic/build/Release/magic.node'
    2019-07-07 17:00:58.426  - error: Caught by controller[0]: was compiled against a different Node.js version using
    2019-07-07 17:00:58.426  - error: Caught by controller[0]: NODE_MODULE_VERSION 57. This version of Node.js requires
    2019-07-07 17:00:58.426  - error: Caught by controller[0]: NODE_MODULE_VERSION 64. Please try re-compiling or re-installing
    2019-07-07 17:00:58.426  - error: Caught by controller[0]: the module (for instance, using `npm rebuild` or `npm install`).
    2019-07-07 17:00:58.426  - error: Caught by controller[0]:     at Object.Module._extensions..node (internal/modules/cjs/loader.js:805:18)
    2019-07-07 17:00:58.426  - error: Caught by controller[0]:     at Module.load (internal/modules/cjs/loader.js:653:32)
    2019-07-07 17:00:58.426  - error: Caught by controller[0]:     at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    2019-07-07 17:00:58.427  - error: Caught by controller[0]:     at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    2019-07-07 17:00:58.427  - error: Caught by controller[0]:     at Module.require (internal/modules/cjs/loader.js:690:17)
    2019-07-07 17:00:58.427  - error: Caught by controller[0]:     at require (internal/modules/cjs/helpers.js:25:18)
    2019-07-07 17:00:58.427  - error: Caught by controller[0]:     at Object.<anonymous> (/opt/iobroker/node_modules/mmmagic/lib/index.js:1:13)
    2019-07-07 17:00:58.427  - error: Caught by controller[0]:     at Module._compile (internal/modules/cjs/loader.js:776:30)
    2019-07-07 17:00:58.427  - error: Caught by controller[0]:     at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
    2019-07-07 17:00:58.428  - error: Caught by controller[0]:     at Module.load (internal/modules/cjs/loader.js:653:32)
    2019-07-07 17:00:58.428  - error: host.blackhole instance system.adapter.sql.0 terminated with code 1 ()
    2019-07-07 17:00:58.428  - info: host.blackhole Restart adapter system.adapter.sql.0 because enabled
    2019-07-07 17:01:15.671  - info: host.blackhole instance system.adapter.admin.0 started with pid 5170
    2019-07-07 17:01:16.956  - info: admin.0 starting. Version 3.6.0 in /opt/iobroker/node_modules/iobroker.admin, node: v10.16.0
    2019-07-07 17:01:17.003  - info: admin.0 Request actual repository...
    2019-07-07 17:01:17.026  - info: admin.0 requesting all states
    2019-07-07 17:01:17.032  - info: admin.0 requesting all objects
    2019-07-07 17:01:17.098  - info: host.blackhole Update repository "default" under "http://download.iobroker.net/sources-dist.json"
    2019-07-07 17:01:17.116  - info: admin.0 received all states
    2019-07-07 17:01:17.181  - info: admin.0 received all objects
    2019-07-07 17:01:17.185  - warn: admin.0 No repository source configured
    2019-07-07 17:01:17.289  - error: admin.0 uncaught exception: error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small
    2019-07-07 17:01:17.289  - error: admin.0 Error: error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small
        at Object.createSecureContext (_tls_common.js:135:17)
        at Server (_tls_wrap.js:870:27)
        at new Server (https.js:62:14)
        at Object.createServer (https.js:85:10)
        at Object.createServer (/opt/iobroker/node_modules/iobroker.js-controller/lib/letsencrypt.js:174:39)
        at __construct (/opt/iobroker/node_modules/iobroker.admin/lib/web.js:446:32)
        at new Web (/opt/iobroker/node_modules/iobroker.admin/lib/web.js:477:7)
        at getData (/opt/iobroker/node_modules/iobroker.admin/main.js:388:39)
        at Socket.adapter.objects.getObjectList (/opt/iobroker/node_modules/iobroker.admin/main.js:441:35)
        at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9)
    2019-07-07 17:01:17.290  - info: admin.0 terminating https server on port 8081
    2019-07-07 17:01:17.301  - info: admin.0 terminating
    2019-07-07 17:01:17.319  - error: Caught by controller[0]: Error: error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small
    2019-07-07 17:01:17.319  - error: Caught by controller[0]:     at Object.createSecureContext (_tls_common.js:135:17)
    2019-07-07 17:01:17.319  - error: Caught by controller[0]:     at Server (_tls_wrap.js:870:27)
    2019-07-07 17:01:17.319  - error: Caught by controller[0]:     at new Server (https.js:62:14)
    2019-07-07 17:01:17.319  - error: Caught by controller[0]:     at Object.createServer (https.js:85:10)
    2019-07-07 17:01:17.320  - error: Caught by controller[0]:     at Object.createServer (/opt/iobroker/node_modules/iobroker.js-controller/lib/letsencrypt.js:174:39)
    2019-07-07 17:01:17.320  - error: Caught by controller[0]:     at __construct (/opt/iobroker/node_modules/iobroker.admin/lib/web.js:446:32)
    2019-07-07 17:01:17.320  - error: Caught by controller[0]:     at new Web (/opt/iobroker/node_modules/iobroker.admin/lib/web.js:477:7)
    2019-07-07 17:01:17.320  - error: Caught by controller[0]:     at getData (/opt/iobroker/node_modules/iobroker.admin/main.js:388:39)
    2019-07-07 17:01:17.320  - error: Caught by controller[0]:     at Socket.adapter.objects.getObjectList (/opt/iobroker/node_modules/iobroker.admin/main.js:441:35)
    2019-07-07 17:01:17.320  - error: Caught by controller[0]:     at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9)
    2019-07-07 17:01:17.320  - error: host.blackhole instance system.adapter.admin.0 terminated with code 0 (OK)
    2019-07-07 17:01:17.320  - info: host.blackhole Restart adapter system.adapter.admin.0 because enabled
    2019-07-07 17:01:28.438  - info: host.blackhole instance system.adapter.sql.0 started with pid 5193
    2019-07-07 17:01:29.170  - error: Caught by controller[0]: internal/modules/cjs/loader.js:805
    2019-07-07 17:01:29.171  - error: Caught by controller[0]:   return process.dlopen(module, path.toNamespacedPath(filename));
    2019-07-07 17:01:29.171  - error: Caught by controller[0]:                  ^
    2019-07-07 17:01:29.171  - error: Caught by controller[0]: Error: The module '/opt/iobroker/node_modules/mmmagic/build/Release/magic.node'
    2019-07-07 17:01:29.171  - error: Caught by controller[0]: was compiled against a different Node.js version using
    2019-07-07 17:01:29.171  - error: Caught by controller[0]: NODE_MODULE_VERSION 57. This version of Node.js requires
    2019-07-07 17:01:29.171  - error: Caught by controller[0]: NODE_MODULE_VERSION 64. Please try re-compiling or re-installing
    2019-07-07 17:01:29.171  - error: Caught by controller[0]: the module (for instance, using `npm rebuild` or `npm install`).
    2019-07-07 17:01:29.171  - error: Caught by controller[0]:     at Object.Module._extensions..node (internal/modules/cjs/loader.js:805:18)
    2019-07-07 17:01:29.171  - error: Caught by controller[0]:     at Module.load (internal/modules/cjs/loader.js:653:32)
    2019-07-07 17:01:29.172  - error: Caught by controller[0]:     at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    2019-07-07 17:01:29.172  - error: Caught by controller[0]:     at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    2019-07-07 17:01:29.172  - error: Caught by controller[0]:     at Module.require (internal/modules/cjs/loader.js:690:17)
    2019-07-07 17:01:29.172  - error: Caught by controller[0]:     at require (internal/modules/cjs/helpers.js:25:18)
    2019-07-07 17:01:29.172  - error: Caught by controller[0]:     at Object.<anonymous> (/opt/iobroker/node_modules/mmmagic/lib/index.js:1:13)
    2019-07-07 17:01:29.172  - error: Caught by controller[0]:     at Module._compile (internal/modules/cjs/loader.js:776:30)
    2019-07-07 17:01:29.172  - error: Caught by controller[0]:     at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
    2019-07-07 17:01:29.172  - error: Caught by controller[0]:     at Module.load (internal/modules/cjs/loader.js:653:32)
    2019-07-07 17:01:29.172  - error: host.blackhole instance system.adapter.sql.0 terminated with code 1 ()
    2019-07-07 17:01:29.173  - info: host.blackhole Restart adapter system.adapter.sql.0 because enabled
    
    

    Wo liegt denn dort der Hund begraben?


  • coffeemachine
    Wo kommt das für den Admin verwendete SSL-Zertifikat her?


  • Dies ist eine verdammt gute Frage, ich habe es bei der damaligen Ersteinrichtung angewaehlt SSL und zwar nur SSL zu verwenden ich kann mich nicht daran erinnern explizit einmal Zertifikate generiert zu haben.

    Innerhalb meiner Privaten Netze vertraue ich den (nicht signierten) Zertifikaten und hat auch bis vor dem "Upgrade" keine Probleme dargestellt.


  • coffeemachine
    Also du hast ein eigenes Zertifikat verwendet? Dann ist Dein damals gewählter Key dafür zu unsicher. Ein älteres OpenSSL als Zertifikatsgenerator hat zum Beispiel damit Probleme ausgelöst. Node 10.16+ nimmt es jetzt mit der Zertifikatsqualität genauer.


  • Welcher js-Controller? Der aktuellste 1.5.12?


  • Bzw selbst gebautes ssl zertifikat im Einsatz?

    Key too small heißt an sich das das zertifikat zu „schlecht“ ist.


  • IMHO Anforderungen (eine von den beiden)
    Level 1
    The security level corresponds to a minimum of 80 bits of security. Any parameters offering below 80 bits of security are excluded. As a result RSA, DSA and DH keys shorter than 1024 bits and ECC keys shorter than 160 bits are prohibited. All export ciphersuites are prohibited since they all offer less than 80 bits of security. SSL version 2 is prohibited. Any ciphersuite using MD5 for the MAC is also prohibited.

    Level 2
    Security level set to 112 bits of security. As a result RSA, DSA and DH keys shorter than 2048 bits and ECC keys shorter than 224 bits are prohibited. In addition to the level 1 exclusions any ciphersuite using RC4 is also prohibited. SSL version 3 is also not allowed. Compression is disabled.


  • apollon77

    nodejs -v
    v10.16.0
    

    Wie gesagt ich kann mich beim besten Willen nicht entsinnen jemals fuer den iobroker Zertifikate generiert zu haben, es sei denn im Webinterface wurde dieses "automatisch" dazu angeregt. Ich verwende auch keine "Let's Encrypt" Zertifikate.

    Dann muesste ich jetzt in Erfahrung bringen, wo liegen die Zertifikate auf die der iobroker zugreift und wie tausche ich diese aus?


  • Lege bitte vorübergehend eine weitere Admin-Instanz mit dem folgenden Befehl,

    iobroker add admin
    

    ausgeführt im iobroker-Ordner, an.

    Die Instanz admin.1 und den zugehörigen Port siehst Du mit

    iobroker list instances
    

    Rufe die dann über den Webbrowser auf. Klappt das soweit?

    Wenn ja, dann bitte einen Screenshot von den Einstellungen der admin.0-Instanz hier posten. Die Seite, wo die Port-Nummer 8081 steht.


  • Wunderbar Stabilostick

    Immerhin hat er jetzt Instanz admin.1 angelegt der auf Port 8081 unverschluesselt lauscht, ich konnte mich sofort wieder einloggen.

    cap_01.JPG

    So sieht es in der Instanz aus, hat vorher auch ohne Murren durchweg funktioniert. Unter dem Reiter Let's Encrypt ist nichts ausgewaehlt worden.


  • Wie alt ist denn die Installation (Version des ersten js-controllers, der die iobroker-DBs ursprünglich vor vieeeelen Monaten angelegt hat)?


  • So zwischen 8 und 6 Monaten, Ende 2018 habe ich das vom virtuellen in den produktiven betrieb uebernommen.

  • Forum Testing Most Active Global Moderator Administrators

    coffeemachine
    und KEIN Update einer alten Version eingespielt?


  • Homoran sagte in Update auf Debian 10 zeigt kein Webinterface:

    coffeemachine
    und KEIN Update einer alten Version eingespielt?

    Nein! ich habe den ioBroker nicht umgezogen oder wiederhergestellt, im Winter letzten Jahres komplett sauber aufgesetzt und gestartet.


  • coffeemachine

    So, jetzt habe ich Dir erst mal einem Daumen hoch verpasst. 👍

    Du hast damit eine ioBroker-Einstellung gefunden (wie bestimmt schon wenige vor Dir), die mit Node.js 10+ Probleme macht. Node 10.15.3 und älter war davon IMHO noch nicht betroffen.

    Hintergrund:
    Das standardmäßig im iobroker.js-controller bis Version 1.5.12 hinterlegte SSL-Zerifikat ist mit 1024bit Schlüssellänge ausgestellt. Ab z.B. Node.js 10.16.0 ist die dort verwendete OpenSSL-Version auf 1.1.1b upgedated. Das will aber mindestens Schlüssellängen von 2048bit sehen.

    Vorschlag:
    Verwende entweder ein eigenes Zertifikat mit passender Schlüssellänge oder verzichte vorübergehend auf https für die Admin-Webseite. Das Problem ist adressiert und wird von den Entwicklen behoben.


  • Stabilostick Hi, hab gerade, weil meine prod-Umgebung nicht mehr vernünftig läuft und ich keine Lust mehr auf Fehlersuche habe (Adapter lassen sich nicht mehr deinstallieren, seit 2 Tagen funktioniert nun auch nach einem Update vom js-controller das Finden der Geräte bei Amazon nicht mehr, die ich im Pro-Cloud-Adapter hab nicht mehr...).
    Daher hab ich folgendes gemacht:

    • Debian 10 installiert
    • (sudo und curl installiert)
    • nodejs v10 installiert
    curl -sL https://deb.nodesource.com/setup_10.x | bash -
    apt-get install -y nodejs
    
    • dann weiter nach ANleitung in der aktuellen Doku auf der Homepage
    curl -sL https://iobroker.net/install.sh | bash -
    

    Da ich keine Ahnung habe, was vom kompletten LOG von Interesse ist für die Fehlersuche, habe ich einmal alles kopiert:

    Bevor ich die VM lösche und wieder von vorn anfange - gibts evtl. eine Erklärung? Liegt es an Debian 10? Dann mache ich 9.8 drauf 🙂

    Danke euch.


  • Kueppert sagte in Update auf Debian 10 zeigt kein Webinterface:

    main: Zeile 137: useradd: Kommando nicht gefunden.
    User iobroker created
    main: Zeile 208: visudo: Kommando nicht gefunden.
    main: Zeile 233: usermod: Kommando nicht gefunden.
    main: Zeile 233: usermod: Kommando nicht gefunden.
    main: Zeile 233: usermod: Kommando nicht gefunden.

    Musst Du ggf irgendwelche speziellen Pakete installieren das du diese Tools hast? An sich sind die fast immer da ...


  • apollon77 ich hab das 64bit-Netinst von Debian 10 genommen, im Setup nur ssh und Standart-Pakete installiert, Webserver sowie Druckerserver weggelassen diesmal.
    Ich wüsste nicht, dass ich sonst diesmal etwas anders gemacht hab wie bei den vorherigen Installationen...


  • Wenn Dudiese kommandos: usermod, useradd und visudo an der Kommandozeile ausführen willst was sagt er denn da?


  • apollon77 hmmm...blöd:

    root@ioBroker2VM:/home/thorsten# usermod
    bash: usermod: Kommando nicht gefunden.
    root@ioBroker2VM:/home/thorsten# useradd
    bash: useradd: Kommando nicht gefunden.
    root@ioBroker2VM:/home/thorsten# visudo
    bash: visudo: Kommando nicht gefunden.
    
    

Suggested Topics

1.8k
Online

34.7k
Users

40.7k
Topics

558.4k
Posts