Formation PUB420 : Système domotique DIY, 2020 Home Assistant

6.5 Se brancher à Home Assistant via SSH


Je vous présente ici la technique pour se brancher à Home Assistant via SSH afin d'avoir accès à un maximum de fonctionnalités.

Notez qu'il est possible de configurer l'accès SSH à l'aide du module complémentaire Terminal et SSH. Cependant, ceci ne donne pas tous les accès dont un développeur pourrait avoir besoin. Entre autres, ce module ne permet pas de gérer les configurations réseau à l'aide de la commande nmcli ni de copier des fichiers entre l'ordinateur et le Raspberry Pi à l'aide de scp.

▼Publicité Le texte se poursuit plus bas

Activation SSH

Lors de l'installation de Home Assistant, vous avez peut-être déjà créé le fichier authorized_keys installé sur une clé USB.

Si vous ne l'avez pas fait, effectuez la procédure de création du fichier authorized_keys sur la clé USB, insérer la clé USB dans le Pi puis redémarrez Home Assistant.

Ceci aura pour effet de :

  • Copier le fichier authorized_keys dans le dossier /root/.ssh.
  • Donner les droits de lecture et d'écriture à l'usager propriétaire de ce fichier (comme si vous aviez fait chmod 600 authorized_keys).
  • Activer le serveur SSH (comme si vous aviez fait systemctl start dropbear).

Une fois le redémarrage complété, la clé USB peut être retirée et elle ne sera plus nécessaire.

Pourquoi faut-il copier seulement la clé publique sur le Pi?

Pour répondre à cette question, consultez cette fiche : « Comment fonctionne l'authentification via SSH? (Vous ne possédez pas les droits pour accéder à cette fiche.) ».

Connexion au Pi

Sous Linux et Mac, vous avez accès à un client SSH directement dans une fenêtre Terminal.

Sous Windows, vous pouvez travailler avec un client SSH disponible à partir d'une fenêtre PowerShell ou d'une console Git Bash.

Je ne vous recommande pas l'utilitaire Putty puisqu'il travaille avec son propre format de clés SSH, non compatible avec le format généré par le traditionnel ssh-keygen.

Le client SSH vous permet de vous connecter au Pi à l'aide d'une commande entrée dans une fenêtre Terminal de votre ordinateur (vous devez remplacer 192.168.1.145 par l'adresse IP de votre Pi). Il faut utiliser le port 22222.

Terminal (sur l'ordinateur)

ssh root@192.168.1.145 -p 22222

Vous n'avez pas de mot de passe à entrer puisque vous utiliser le système de clés SSH.

Vous avez désormais accès au terminal HassOS.

Résultat à l'écran

monnom@MacBook-Pro-de-MonNom ~ %ssh root@192.168.1.145 -p 22222
Welcome to Home Assistant OS.

Use `ha` to access the Home Assistant CLI.
#

Alternative pour les systèmes Windows

Parfois, sous Windows, la copie de la clé SSH publique ne fonctionne par correctement.

Je vous propose une façon détournée pour copier cette clé publique. Vous aurez besoin de brancher un clavier et un écran au Raspberry Pi pour y arriver.

  • Sur Home Assistant, installez le module complémentaire File Editor.
  • À l'aide de ce module complémentaire, créez un nouveau fichier nommé authorized_keys. Il sera placé dans le dossier config, c'est-à-dire /mnt/data/supervisor/homeassistant.
  • Sur votre système Windows, à l'aide d'une fenêtre PowerShell, affichez la valeur de votre clé publique SSH.
    PowerShell

    cat C:\Users\MonNom\.ssh\id_ed25519.pub

  • Dans File Editor, éditez votre nouveau fichier authorized_keys et collez-y la valeur de la clé publique. Elle devrait commencer par ssh-ed25519 et se terminer par le courriel utilisé dans la commande ssh-keygen.
  • Puisque File Editor n'a pas accès aux dossiers situés en dehors de la racine du site Web, vous devrez déplacer le fichier à l'aide du clavier branché au Raspberry Pi.
    Terminal HassOS

    cp /mnt/data/supervisor/homeassistant/authorized_keys /root/.ssh

  • Vous devriez maintenant avoir accès à votre Pi via SSH.
    PowerShell

    ssh root@192.168.1.145 -p 22222

Pour plus d'information

« Debugging the Home Assistant Operating System ». Home Assistant. https://developers.home-assistant.io/docs/operating-system/debugging/

Veuillez noter que le contenu de cette fiche vous est partagé à titre gracieux, au meilleur de mes connaissances et sans aucune garantie.
Merci de partager !

Site fièrement hébergé chez A2 Hosting.

Soumettre