Demon-nok-avec-la-version-2022-07-24 01:01:15

VER_DEBIAN
D’après les information santé et la commande lsb_release c’est Debian 11

Ce n’est pas bien grave, jMQTT est normalement fonctionnel sur Debian 11, mais je préfère savoir sur quelle plateforme je dois debug :wink:

1 « J'aime »

@regi54, tu as un moment ce soir pour faire un debug live via discord ?

Sinon je peux te passer des modifs et des commandes de test supplémentaires.

Bad

Ce soir ça va être compliqué mais demain dans la journée je peux être disponible

Ce ne sera pas possible demain dans la journée, je travaille. Par contre, je suis dispo demain soir à partir de 18h30.

D’ici là, est-ce que tu peux lancer (chacune à son tour) ces 3 commandes et me renvoyer les resultats ?

sudo -u www-data ss -Htulpn | grep -E '[:][0-9]+[ \t]+.*[:][*][ \t]+.+pid=[0-9]+'

sudo -u www-data netstat -lntp | grep -E '[:][0-9]+[ \t]+.*[:][*][ \t]+.+[ \t]+[0-9]+/python3'

sudo -u www-data lsof -nP -iTCP -sTCP:LISTEN | grep -E 'python3[ \t]+[0-9]+[ \t]+.+[:][0-9]+[ \t]+'

Voici les résultats des commandes:

pi@jeedom:~$ sudo -u www-data ss -Htulpn | grep -E '[:][0-9]+[ \t]+.*[:][*][ \t]+.+pid=[0-9]+'
[sudo] Mot de passe de pi : 
udp UNCONN 0      0                                 0.0.0.0:5353  0.0.0.0:* users:(("php",pid=2545590,fd=10))
udp UNCONN 0      0                                 0.0.0.0:5353  0.0.0.0:* users:(("php",pid=2545540,fd=9)) 
tcp LISTEN 0      10                                0.0.0.0:6900  0.0.0.0:* users:(("php",pid=2545601,fd=10))
tcp LISTEN 0      5                                 0.0.0.0:6901  0.0.0.0:* users:(("php",pid=2545540,fd=10))
tcp LISTEN 0      511                        192.168.31.125:8121  0.0.0.0:* users:(("nodejs",pid=2164,fd=22))
tcp LISTEN 0      511                                     *:8020        *:* users:(("nodejs",pid=2643,fd=28))

pi@jeedom:~$ sudo -u www-data netstat -lntp | grep -E '[:][0-9]+[ \t]+.*[:][*][ \t]+.+[ \t]+[0-9]+/python3'
(Tous les processus ne peuvent être identifiés, les infos sur les processus
non possédés ne seront pas affichées, vous devez être root pour les voir toutes.)

du coup je me suis mis en root:

root@jeedom:/home/pi# netstat -lntp | grep -E '[:][0-9]+[ \t]+.*[:][*][ \t]+.+[ \t]+[0-9]+/python3'
tcp        0      0 127.0.0.1:34831         0.0.0.0:*               LISTEN      2537154/python3     
tcp        0      0 127.0.0.1:55088         0.0.0.0:*               LISTEN      1974/python3        
tcp        0      0 127.0.0.1:41269         0.0.0.0:*               LISTEN      2534095/python3     
tcp        0      0 127.0.0.1:55100         0.0.0.0:*               LISTEN      2286/python3        
tcp        0      0 127.0.0.1:55008         0.0.0.0:*               LISTEN      3813023/python3     
tcp        0      0 127.0.0.1:55012         0.0.0.0:*               LISTEN      2197/python3        
tcp        0      0 127.0.0.1:55019         0.0.0.0:*               LISTEN      3810716/python3     
tcp        0      0 127.0.0.1:55052         0.0.0.0:*               LISTEN      3247/python3  

Pour la 3eme commande si je ne me met pas en root il n’y a rien qui sort.

lsof -nP -iTCP -sTCP:LISTEN | grep -E 'python3[ \t]+[0-9]+[ \t]+.+[:][0-9]+[ \t]+'
python3      1974  www-data    6u  IPv4   25659      0t0  TCP 127.0.0.1:55088 (LISTEN)
python3      2197  www-data    7u  IPv4   26957      0t0  TCP 127.0.0.1:55012 (LISTEN)
python3      2286  www-data    8u  IPv4   25267      0t0  TCP 127.0.0.1:55100 (LISTEN)
python3      3247  www-data    6u  IPv4   31570      0t0  TCP 127.0.0.1:55052 (LISTEN)
python3   2534095  www-data    3u  IPv4 5996878      0t0  TCP 127.0.0.1:41269 (LISTEN)
python3   2537154  www-data    3u  IPv4 6006831      0t0  TCP 127.0.0.1:34831 (LISTEN)
python3   3810716  www-data    9u  IPv4 9185959      0t0  TCP 127.0.0.1:55019 (LISTEN)
python3   3813023      root    3u  IPv4 9192333      0t0  TCP 127.0.0.1:55008 (LISTEN)

Ok, c’est bien ce que je pensais.

Visiblement il y a un changement entre debian 10 et 11. L’utilisateur www-data n’a pas assez de permissions pour voir ses propres process, mais c’est étonnant que sans passer root on ne puisse pas ss/netstat/lsof ses propres processus.

Recherche les 3 commandes (ss, netstat, lsof) dans jMQTT.class.php et rajouté un sudo devant chaque commande, ton daemon jmqtt devrait se lancer comme il faut et être accepté par Jeedom.

Ok j’éssaie ça demain.
Je ne pourrai pas plutôt donner plus de droit à www-data?

Je viens de chercher et c’est la seul façon de donner « plus de droits » à cette commande.

On est d’accord que tu ne fais pas tourner Jeedom dans un docker mais tu as des dockers qui tournent sur cette machine ?

Ok le démon démarre par contre j’ai l’erreur :
[2022-07-27 08:48:07]ERROR : Accès non autorisé depuis ::1, avec la clé API commenceant par 5BhveIsF...
qui revient toute les 30s à peux prêt .

J’ai utiliser l’iso de jeedom pour l’installation et ce pc ne gère que jeedom.
J’ai essayer la commande docker et j’ai en repose docker : commande introuvable.
Donc j’en déduit que je n’ai pas de docker qui tourne

Merci pour ton retour, je pense qu’il y a un souci avec la clé API sur ton installation.

Dans la liste des clé API, tu as bien une clé commencent par 5BhveIsF pour jMQTT ?
Tu peux me faire une capture d’écran de ta page API en masquant partiellement les clés ?
Car ce n’est pas la même clé que dans le log il y a 2j.

Je regarde où ça peut coincer d’autre.

Justement non la clé commence par lZYCAL404
J’ai supprimé et réinstaller le plugin plusieurs fois ca viens peut être de là le changement de clé?

api

J’aurais bien aimé toute la page pour identifier d’où vient la requête.
Car c’est aussi possible que ça n’ait aucun rapport avec jMQTT.

Mais cette erreur est bien générée par jMQTT :

Le plugin est toujours en échec au même endroit, juste après les tentatives de rapprochement entre le PID et le port ouvert…





Voici les clés API

Le plugin fonctionne j’ai des informations qui remonte.
Et j’ai redémarrer le PC plus d’erreur depuis 30min

Bon bon bon… ravi que ça marche, mais je ne sais pas pourquoi et c’est plus qu’étrange !

Je ne retrouve la clé API sur aucun plugin, peut-être un utilisateur ?

Je viens de vérifier pas au niveau des utilisateurs non plus

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.