Erreur code 255 bash

Mon problème

Bonjour. J’ai un script d’extinction d’un client via ssh et shutdown. Il a besoin de s’authentifier sur le client via ssh. J’arrive à le faire fonctionner via une clef, malheureusement à chaque maj de HA, l’authentification ne fonctionne plus et je dois relancer les deux commandes suivantes:

docker exec -it homeassistant ssh-keygen -t ed25519 -C "mail@mail.com"
docker exec -it homeassistant ssh-copy-id -i /root/.ssh/id_ed25519.pub user@non_client

Il doit bien hy avoir un moyen de mettre à jour HA sans recréer à chaque fois la clef et l’envoyer au client?
Merci.

Salut Alain,

C’est bien ton container HA qui se charge d’éteindre le client ?

Si c’est bien le cas tu peux générer la paire de clé sur le client directement (ou ailleurs). Tu colles la clé publique dans l’authorized_keys du client.

Tu déposes la clé privée dans un sous-dossier du répertoire /config de ton HA en y appliquant les bons droits.

Et à partir de là la clé ne « sautera » plus à chaque mise à jour.

Chez moi la clé privée se trouve dans :

/config/custom_things/ha_ed25519

Côté client dans authorized_keys cette clé n’est autorisée que depuis l’ip de HA pour l’arrêt de la machine.

Et côté HA j’ai une « shell_command » de ce style :

shutpc: 'ssh -p XXXX -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i /config/custom_things/ha_ed25519 user@192.168.X.XX'

Merci. Bonne idée, je vais essayer. Par contre pourquoi :
-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no
?
moi j’ai un script:

alias: eteindre_fixe
sequence:
  - service: shell_command.eteindre_fixe
    data: {}
mode: single
icon: mdi:desktop-classic

et un fichier eteindre_fixe.sh:

#!/bin/bash
ssh user@machine sudo shutdown -h now

A l’époque et sans ce bout de commande la shell_command ne fonctionnait pas, j’avais trouvé cette solution sur le forum international.

Vu que ça fait un moment déjà que j’ai implémenté ça, j’essaierai de faire un test sans pour voir si maintenant ça passe.

Oui c’est sur le forum international que j’ai trouvé mes lignes de commandes pour les clefs et j’avais vu ces options mais non utiles chez moi.

Pour info ces options permettent de ne pas mémoriser/vérifier la clé publique de l’hote distant. C’est utile pour éviter de refaire la validation lorsque l’on réinstalle par exemple

Ou qu’il y’ait une mise à jour du container HA, je pense.

Bon, il y a eu une maj de HA et je n’y arrive pas. Je ne sais pas générer, ni les droits etc…

Finalement, çà marche! Je pense qu’il fallait encure un redémarrage de HA mais en tout cas, c’est bon. Merci.