Réussir ses inclusions en mode sécurisé
Dans le cadre de la série d’articles sur la sécurité du protocole Z-Wave, voici un guide pour vous aider à réussir vos inclusions en mode sécurisé.
Nous avons précédemment abordé:
- Les classes de commandes sécurités du protocole Z-Wave.
- Comment modifier la clé réseau par défaut avec une clé privée unique.
Suivront prochainement:
Vous l’avez compris, les inclusions en mode sécurisé protègent mieux votre domotique, malgré les failles actuelles. Certains périphériques n’exposent leurs fonctionnalités complètes que lorsqu’ils ont été inclus de manière sécurisée.
Peut-être souhaitez-vous simplement renforcer la sécurité de votre installation domotique en privilégiant des échanges en mode sécurisé.
Je vais ici vous guider pour mener à bien l’inclusion en mode sécurisé.
Avant de commencer
Il est très important de toujours lire le manuel de votre module afin de connaître la méthode d’inclusion recommandée.
Si vous ne l’avez pas encore fait, je vous recommande le tutoriel de modification de la clé réseau Z-Wave. Votre réseau sera encore mieux sécurisé avec la clé passe-partout par défaut.
Il n’est évidemment pas obligatoire d’avoir remplacé la clé réseau, mais je vous le recommande fortement.
Inclusion sécurisée
Pour effectuer une inclusion sécurisée il faut, au moment de lancer l’assistant d’inclusion du plugin Z-Wave, sélectionner le Mode sécurisé.
Comme pour une inclusion non sécurisée, le module doit être à proximité du contrôleur.
Selon la documentation du module à inclure, on effectue la séquence de clics requise. Pour certains modules, la séquence est différente entre une inclusion en mode non sécurisé et le mode sécurisé.
Après quelques secondes, si l’inclusion s’est bien déroulée, Jeedom va créer l’équipement avec son jeu de commande et la vignette du module.
Les inclusions sécurisées sont en général plus difficile à réaliser. Nous avions, au début, activé l’assistant d’inclusion en mode sécurisé par défaut.
On s’est rendu compte que les utilisateurs avec un contrôleur Zwave.Me rencontraient beaucoup de difficultés pour inclure leurs modules. On a donc sélectionné le mode non sécurisé par défaut.
Je vais maintenant vous décrire un problème qui arrive très souvent. En fait, il est très fréquent, lors de l’inclusion de modules sur piles, qu’ils retournent trop vite en veille.
Module bien détecté
Jeedom crée automatiquement un équipement avec les différentes commandes. C’est identique à une inclusion non sécurisée.
Le plugin Z-Wave vous permet facilement d’identifier les modules supportant la classe de commande S0 et s’ils sont ou non en mode sécurisé. On peut le voir via l’écran de santé Z-Wave ou via l’écran de configuration du module.
Un petit cadenas vert qui peut être ouvert ou fermé selon que le module est non sécurisé ou sécurisé.
- Sans cadenas, module ne supporte pas la sécurité ou ne l’expose pas.
- Cadenas ouvert, le module supporte la classe de commande Security S0, mais n’a pas été inclus en mode sécurisé.
- Cadenas Fermé. le module est sécurisé.
On clique donc dans configuration. Et nous voyons ceci :
Le drame ! Je n’ai pas le petit cadenas et pourtant j’ai bien effectué l’inclusion sécurisée… Encore une fois, pas de panique, c’est simplement un problème de remontée d’information qui ne s’est pas effectuée lors des étapes de l’interview.
Pour y remédier, le plus simple est de lancer la régénération de la détection du nœud via l’onglet Actions.
Ce qui va provoquer un redémarrage du démon Z-Wave et refaire les étapes complètes de l’interview du module. Si le module est sur pile, il faudra le réveiller une fois le réseau remonté.
Vous n’avez pas à refaire l’équipement, ce n’est que le cache de la librairie openzwave qui sera mis à jour.
On revient sur la page de configuration et cette fois :
J’ai bien mon cadenas fermé !
Si vous avez, par le passé, procédé à d’autres inclusions sécurisées et que vous n’en étiez pas trop soucié de voir si le cadenas était présent ou simplement bien fermé pour confirmer que le module est bien sécurisé, il est possible que vous ayez des cadenas ouvert.
Le cadenas ouvert signifie que le module supporte la classe de commande S0 mais qu’il n’est pas actif. Si vous pensez que le module a bien été inclus en mode sécurisé, on peut essayer de remédier à la situation.
Nous l’avons vu, le cadenas ne va pas arriver automatiquement suite à l’inclusion comme on s’y attendrait… malheureusement.
Du moment qu’on a simplement relancé le réseau, le cadenas sera présent. Dans l’étape précédente, on a relancé le réseau et refait l’interview pour avoir le cadenas fermé.
Comme dans notre contexte le réseau a déjà été redémarré, voir même plusieurs fois on peut simplement forcer l’interview à nouveau. Pour ce faire, on lance l’action Rafraîchir infos du nœud.
Encore une fois, pour un module sur pile, on doit le réveiller pour compléter l’interview.
A la fin de l’interview, on devrait bien avoir un cadenas fermé si vraiment l’inclusion avait été préalablement effectuée en mode sécurisé.
Si, à cette étape, vous avez toujours un cadenas ouvert, vous pouvez encore essayer la régénération du noeud.
Si le cadenas est ouvert, toute porte à croire que le module n’a pas été inclue en mode sécurisé ou que l’inclusion sécurisé n’avait pas réussi.
Il faudra alors exclure et inclure à nouveau ce module si vous souhaitez réellement utiliser le module en communication sécurisé.
Jeedom m’a créé un équipement générique
L’inclusion sécurisée prend plus de temps qu’une non sécurisée, il n’est pas rare (typiquement avec des modules sur piles) que Jeedom crée un équipement générique comme ici :
Pas de panique, il n’est à priori pas nécessaire de refaire votre inclusion, c’est en général simplement que les informations requises ne sont pas parvenues au contrôleur Z-Wave avant la fin de l’assistant d’inclusion.
L’interview d’un module s’effectue en plusieurs étapes. Dans le cas d’un module inclus en mode sécurisé, les échanges seront encryptés, et, comme à l’inclusion il y a beaucoup d’échanges, votre module a peut-être décidé de retourner en veille avant la fin de l’interview.
Cette problématique arrive aussi en mode non sécurisé et la solution proposée sera aussi valable.
Pour remédier, il vous faudra simplement cliquer sur le bouton Configuration pour accéder à la page du nœud.
Dans l’onglet résumé, nous constatons que l’interview n’est pas complétée.
Il vous suffira de réveiller le module afin de voir progresser l’interview. La page du module se rafraîchit automatiquement. Lorsque le module est réveillé vous aller voir progresser l’interview.
Il est possible que vous ayez besoin de réveiller le module plusieurs fois pour que l’interview se complète.
Avec l’interview complétée, on referme la page de configuration du nœud pour revenir dans l’écran de l’équipement.
Comme les informations du module étaient incomplètes, Jeedom n’a pas créé le vrai jeu de commandes pour le module.
Pour corriger, il vous suffit de supprimer l’équipement. Je dis bien supprimer, pas exclure.
Une fois supprimé, on lance la synchronisation.
Ce qui va automatiquement créer l’équipement manquant avec son bon jeu de commandes.
Et en bonus, il aura directement son cadenas fermé, si bien entendu l’inclusion a été effectuée en mode sécurisé.
Limitations
Quelques limitations à tenir compte si vous effectuez des inclusions en mode sécurisé.
Z-Stick GEN5
Un des avantages du Z-Stick GEN5 d’Aeotec est sa possibilité d’effectuer des inclusions/exclusions sans Jeedom, en déporté sans devoir rapprocher vos modules.
Il ne sera pas possible d’utiliser le Z-Stick GEN5 sans Jeedom pour effectuer des inclusions en mode sécurisé. En effet, il ne peut embarquer la clé privée en mémoire.
Si vous pensiez refaire votre réseau en mode sécurisé ou en mode normal, il faudra revoir votre feuille de route.
Associations directes
L’association directe ne fonctionne que si le nœud source et le nœud cible sont à portée l’un de l’autre. Ils doivent avoir une connexion sans fil directe. Le maillage n’entre pas en ligne de compte.
Un périphérique sécurisé communiquera en association directe avec les autres périphériques tant que ce périphérique fournira le même niveau ou un niveau de sécurité plus élevé.
Donc un module non sécurisé ne pourra jamais commander en association directe un module sécurisé. Par contre, un module sécurisé pourrait, selon sa configuration, commander un module non sécurisé.
Les derniers capteurs en Z-Wave Plus de chez Fibaro ont tous, sauf erreur, un jeu de paramètres qui permet de modifier comment les associations directes seront transmises.
Je vais prendre ici l’exemple de la Keyfob qui serait vraiment très propice à cet emploi.
Ce paramètre permet de définir comment les commandes seront envoyées dans des groupes d’association, soit sécurisées ou non sécurisées. Ce paramètre a un sens seulement si le module (la source) est inclus mode sécurisé.
Par défaut, toutes les commandes à destination des différents groupes d’association seront transmises en mode sécurisé. La valeur du paramètre est la somme du poids de chaque groupe. Donc si je souhaite commander un ou des modules en non sécurisé dans le groupe 5, on aura une somme de 4087 (4095 – 8).
On ne pourra pas avoir dans le même groupe à la fois des modules sécurisés et non sécurisés.
Je vous recommande cette lecture sur les groupes d’associations en compléments d’informations.
Latence
Les échanges sécurisés demandent plus de traitements lors du chiffrement et déchiffrement. Le temps d’inclusion avec l’interview est plus long. Des latences peuvent être ressenties dans les échanges.
Conclusion
Je pense que j’ai couvert ici les questions que je rencontre le plus souvent sur les inclusions sécurisées. Il s’agit d’un condensé de plusieurs sujets que l’on retrouve sur le forum auquel j’ai participé.
Le prochain sujet à venir est, je pense, très attendu. Je vais traiter des effets sur le maillage que peut avoir le fait de mélanger des modules sécurisés et non sécurisés dans un même réseau Z-Wave.
A tout bientôt!
Un grand merci pour cet article d’une grande lisibilité et qui, pour moi, tombe au meilleur moment: je suis en train de basculer tous mes objets en mode sécurisé. Je souhaite vivement que vous continuiez à produire ce type de document d’information / formation qui fait cruellement défaut dans la documentation d’origine de Jeedom. Il semble cependant que l’équipe de Jeedom soit en train de revoir et de compléter l’existant. Continuez à nous apporter votre aide, vous savez maintenant combien elle est utile à un vieux débutant de 70 ans qui vous renouvelle son appui enthousiaste.
C’est avec un très grand plaisir. La documentation initiale du plugin Z-Wave pour jeedom est en grande partie aussi le fruit de mon travail. Les différents tutoriaux du Blog sont là pour compléter et aller plus loin que la documentation afin de la garder « digérable ». N’hésitez pas à solliciter mon aide, je réponds volontiers aux questions ici et ou sur le forum de jeedom.
Merci pour ces informations claires et précises
Je rejoins mes prédécesseurs pour cette série d’articles qui est vraiment très intéressante et très claire !
Merci.
merci, c’est un plaisir de partager et c’est aussi un très grand plaisir de voir que ça vous soit utile.
Ça réponds bien aux questions je me posais sur l’inclusion en mode sécurisé. Merci pour cet article.
Encore une fois, bravo pour la qualité de vos articles.
merci du commentaire et au plaisir de te retrouver sur d’autres articles
Tres bon article mais qui ne m a malheureusement pas permis de resoudre mon probleme d inclusion de les modules prises HANK.
Apres ouverture de ticket, appel de Domadoo qui ont fait des test en labo et qui n ont pas trouvé de probleme, je me retrouve quelque soit le mode d inclusion avec un module non reconnu donc generique et inutilisable.
Cela fait 1 semaine que j essai en vain de l inclure.
Mes 3 module sont arrivés neufs et n ont toujours pas fonctionné.
Sur la notice est inscrit V1.3 alors que sur le site ZwaveAlliance le module est déclaré en V1.0…peut être une erreur de firmware.
En tout cas la prochaine fois je m orienterais sur de la marque reconnue
si tu procèdes à une inclusion non sécurisé, le module est-il bien reconnu? coté openzwave obtiens-tu des ids constructeur valide? si oui les quels? il est possible que ces modules ne son tout simplement pas dans jeedom.
Salut Nechry et merci de repondre,
Dans les 2 modes d’inclusion le module apparaît en générique.
Dans configuration l’identifiant fabricant, le type, et identifiant produit n’apparaissent pas.
J’ai beau réveiller la prise pendant 10 min aucune info ne remonte au contrôleur.
La prise est la HKZW-SO05 pourtant bien compatible.
Domadoo me confirme qu’ils ont fait des tests en labo et qu’ils ne rencontrent aucun problème. J ai pour ma part la dernière version de jeedom V3.1.7 (jeedom smart) et la dernière version du plugin Zwave
ok oui normalement pour la HKZW-SO05 il a bien une config jeedom et openzwave. et inclusion non sécurisé ça donne quoi ?
Pareil dans les 2 cas aucun code fabricant / type / id ne remonte.
Le module passe en dead juste après l’inclusion.
Si je réveille le module l’etat passe en « Probe » puis revient à dead.
Je pense avoir mis le doigt sur un problème que des acheteurs potentiels de ces modules risquent de rencontrer.
j’ai même essaye avec une clé AeonLabs sur mon pc avec Domoticz pareil…
Mes compétences en dev sont proches de zéro mais j’aurais bien aimé voir les trames que le module envoi lors de l’inclusion histoire de voir si le module n’est pas défaillant
Ok, donc la tu semble vraiment avoir des modules défaillants. Tu peux normalement les retourner sous garantie? Je ne comprends pas que tu dois réveiller le module, il est sur secteur non? Il ne devrait pas être en veille.
Oui effectivement, même moi je suis surpris de ce phénomène. ils sont sur secteur mais ils faut les réveiller pour voir l état passer en « Probe »
Je vais renvoyer ces 3 modules, en tout merci d’avoir pris qq min pour moi, car mes questions sont restées sans réponses sur le forum
Bonjour Nerchy
Merci pour ces 4 articles sur la sécurisation.
Je pense avoior bien suivi la démarche pour inclure en mode sécurisé, 3 fibaro FGSD2 (detecteurs de fumées) sur une box Jeedom à jour 3.1.7 (de mémoire)
Malgré les suppression, les réveils, le rechargement des parametres du noeud, la syncrhonisation… rien à faire, le cadenas vert n’apparait jamais.
Que finre ?
Par ailleurs, est ce normal qu’apparaisse la clef usb de la box Jeedom ?
merci
Christophe
Dans le désordre oui c’est normal que le contrôleur apparaisse dans les équipements, c’est un module comme les autres qui permet l’utilisation de la cmd Switch All.
Je n’ai jamais essayé l’inclusion sécurisé sur les FGSD2, il faut bien faire la régénération de la détection du nœud. là si tu n’a même pas de cadenas, c’est que l’inclusion sécurisé ne semble pas avoir été réalisé avec succès.
Bonjour merci pour ce superbe article. J’ai une petite question: Est il possible de passer d’un module zwave non sécurisée en sécurisé sans de nouveau refaire l’inclusion?
Merci d’avance,
C.
non l’échange des clés se produit seulement lors de l’inclusion.
merci de ton commentaire