Erreur TLS avec mosquitto_pub sous Windows lors de la connexion à Hermetry, comment obtenir des logs détaillés ?
Traduit de Türkçe par IA ·
Avant d’écrire le firmware sur l’appareil de terrain, je veux tester la connexion depuis mon ordinateur portable Windows 10 avec le client mosquitto. Mosquitto 2.0.18, installation Windows officielle. J’ai ouvert l’appareil dans Hermetry et obtenu un jeton d’accès.
mosquitto_pub -h 185.x.x.x -p 8883 -u <token> -t v1/telemetry -m "{"t":21.4}" -q 1
Error: A TLS error occurred.
Il n’affiche rien d’autre. Le broker ne m’appartient pas, je ne peux donc pas consulter son log. Quelle est la méthode pour obtenir des logs détaillés côté client ? Auparavant, mosquitto.conf contenait log_type all, mais je pense que c’était pour le broker.
Saha cihazının firmware’ini yazmadan önce bağlantıyı Windows 10 dizüstünden mosquitto istemcisiyle denemek istiyorum. Mosquitto 2.0.18, resmi Windows kurulumu. Cihazı Hermetry’de açtım, access token aldım.
mosquitto_pub -h 185.x.x.x -p 8883 -u <token> -t v1/telemetry -m "{"t":21.4}" -q 1
Error: A TLS error occurred.
Başka hiçbir şey yazmıyor. Broker benim değil, onun loguna bakamıyorum. İstemci tarafında ayrıntılı log almanın yolu nedir? Eskiden mosquitto.conf’ta log_type all vardı ama o broker için sanırım.
Traduit de Türkçe par IA ·
Ajoute -d, il affiche la sortie de débogage.
-d ekle, debug çıktısı verir.
Traduit de Türkçe par IA ·
Je l’ai ajouté. Seulement Client null sending CONNECT puis la même erreur TLS. CONNACK n’arrive même pas, donc ça reste bloqué au niveau de la poignée de main.
Ekledim. Sadece Client null sending CONNECT ve arkasından aynı TLS hatası. CONNACK bile gelmiyor yani el sıkışmada kalıyor.
Traduit de Türkçe par IA ·
Si tu n’obtiens pas de CONNACK, tu es bloqué pendant la poignée de main TLS. Il y a deux éléments dans ta commande, et les deux provoquent cela.Premièrement, tu te connectes avec l’IP. Hermetry exige SNI, c’est-à-dire que le client doit envoyer le nom du serveur pendant la poignée de main ; avec une connexion par IP, cela ne se produit pas et la poignée de main échoue. Utilise le nom d’hôte de la carte Connection details de ton appareil, l’adresse de ta région.Deuxièmement, le client mosquitto sous Windows n’utilise pas automatiquement le magasin de certificats du système. Dans la version 2.x, il existe --tls-use-os-certs, ou bien tu peux fournir un bundle de CA que tu possèdes avec --cafile. Lors de ma première tentative, j’avais oublié les deux et j’ai obtenu exactement le même message.
mosquitto_pub -d -h <connection details'teki host> -p 8883 --tls-use-os-certs ^
-i test-pc-01 -u <token> -t v1/telemetry -q 1 -m "{"t":21.4}"
Une fois la connexion ouverte, tu verras les erreurs suivantes (comme CONNACK 4, 5) dans l’onglet Log de l’appareil, avec leur cause ; la cause de l’erreur 5 n’est jamais envoyée à l’appareil, elle est seulement affichée là. Le tableau se trouve ici : Cihaz bağlanmıyor.
CONNACK gelmiyorsa TLS el sıkışmasında takılıyorsun. Komutunda iki şey var, ikisi de bunu yapar.
Birincisi IP ile bağlanıyorsun. Hermetry SNI istiyor, yani istemci el sıkışmada sunucu adını göndermeli; IP ile bağlanınca bu olmuyor ve el sıkışma düşüyor. Cihazın Connection details kartındaki host adını kullan, kendi bölgenin adresini.
İkincisi Windows’taki mosquitto istemcisi sistemin sertifika deposunu kendiliğinden kullanmıyor. 2.x sürümlerinde --tls-use-os-certs var, ya da elindeki bir CA paketini --cafile ile ver. Ben ilk denememde ikisini de unutmuştum, birebir aynı mesajı aldım.
mosquitto_pub -d -h <connection details'teki host> -p 8883 --tls-use-os-certs ^
-i test-pc-01 -u <token> -t v1/telemetry -q 1 -m "{"t":21.4}"
Bağlantı açılınca bundan sonraki hataları (CONNACK 4, 5 gibi) cihazın Log sekmesinde nedeniyle birlikte görürsün; 5’in nedeni cihaza hiç gönderilmiyor, sadece orada yazıyor. Tablo burada: Cihaz bağlanmıyor.
Traduit de Türkçe par IA ·
Ça a marché avec le nom d’hôte + –tls-use-os-certs, CONNACK 0, PUBACK reçu. J’ai essayé avec l’IP parce que le DNS de l’entreprise ne fonctionnait pas à ce moment-là, et ensuite j’ai oublié. Merci beaucoup.
Host adı + –tls-use-os-certs ile geçti, CONNACK 0, PUBACK geldi. IP ile denememin sebebi kurumdaki DNS’in o sırada çalışmaması, sonra da unutmuşum. Sağ olun.
Traduit de Türkçe par IA ·
Cela vaut aussi pour l’appareil : ne fixez pas d’IP statique dans le firmware. Sur un de nos RTU, c’était fait ainsi, et nous avons cherché pendant des mois pourquoi il ne se connectait pas.
Cihazda da aynı şey geçerli, firmware’de IP sabitlemeyin. Bizim bir RTU’da öyle yapılmıştı, aylarca neden bağlanmadığını aradık.
- Vous devez être connecté pour répondre à ce sujet.
Rejoignez la discussion
Connectez-vous pour poser et répondre à des questions, aimer les messages utiles et marquer la réponse qui a résolu votre problème. Chaque contribution rapporte des points et des niveaux.

