Description
Marre de laisser vos serveurs tourner pour rien ? ou de devoir venir appuyer sur un bouton ou un clavier pour les allumer ou sortir de veille ? Je vous montre comment prendre le contrôle de votre infrastructure directement depuis votre tableau de bord Home Assistant, de façon sécurisée. 📱 Suivez moi ! 💻 ►lhub.to/GuiPoM 🔗 Les liens et commandes 🔗 ► wireguard.com/ Génération des clés (sur HA) mkdir -p /config/.ssh ssh-keygen -t ed25519 -f /config/.ssh/id_ed25519_omv -N "" cat /config/.ssh/id_rsa_omv.pub Création de l'utilisateur useradd -m -s /bin/bash hass usermod -aG _ssh hass mkdir -p /home/hass/.ssh echo VOTRE_CLE_PUBLIQUE_ICI | tee /home/hass/.ssh/authorized_keys (ou avec un chevron sans tee) Sécurisation de l'utilisateur, version classique chown -R hass:hass /home/hass/.ssh chmod 700 /home/hass/.ssh chmod 600 /home/hass/.ssh/authorized_keys Sécurisation de l'utilisateur, version chroot chown root:root /home/hass chmod 755 /home/hass chmod 700 /home/hass/.ssh chmod 600 /home/hass/.ssh/authorized_keys Activation des capacités sudo limitées export EDITOR=nano visudo -f /etc/sudoers.d/hass Ligne à ajouter dans le fichier visudo (à adapter selon vos besoin): hass ALL=(ALL) NOPASSWD: /usr/sbin/shutdown, /usr/sbin/reboot, /usr/sbin/poweroff Dans HA, exemple de shell shell_command: nas_shutdown: "ssh -i /config/.ssh/id_rsa_omv -o StrictHostKeyChecking=no hass@IP_DU_NAS 'sudo /usr/sbin/shutdown -h now'" nas_reboot: "ssh -i /config/.ssh/id_rsa_omv -o StrictHostKeyChecking=no hass@IP_DU_NAS 'sudo /usr/sbin/reboot'" Test depuis HA ssh -i /config/.ssh/id_rsa_omv -o StrictHostKeyChecking=no hass@IP_DU_NAS "sudo /usr/sbin/shutdown -h now" 📃 Sommaire 📃 La gestion de l'état, du démarrage et de l'arrêt de vos serveurs depuis Home Assistant Un exemple depuis un réseau 5G: démarrage et arrêt de mon NAS Un projet: piloter mes machines avec des relais pour l'allumage et l'extinction Plus d'informations dans une vidéo parue il y a 3 ans avec Jeedom pour piloter Deux volets dans cette vidéo: domotique et infrastructure avec un OS linux Des contraintes sur le réseau: en particulier des adresses IP fixes Création d'un utilisateur dédié hass Création des clés SSH avec algo EdDSA (ED25519) Transfert de la clé publique sur la machine distante Sécurisation du répertoire .ssh et aussi du dossier home de hass Création de la configuration sudoers pour hass On vérifie qu'on peut exécuter des commandes ssh avec et sans sudo Il faudra explicitement lister les commandes qui peuvent être appelées (version la plus sûre!) Récapitulatif Les prérequis sur Home Assistant: Wake-on-lan, Shell scripts, Ping (ICMP), et Studio Code server pour que ce soit plus facile Découverte du configuration.yaml et activation de Wake-on-lan Création des switchs Wake-on-lan Création des commandes Shell Création de l'entrée dans l'intégration Ping (ICMP) Redémarrage de HA On vérifie que les entrées sont en place et on finit les associations et nommages Création d'une carte entités Ajout de boutons conditionnels avec confirmation d'appui Ajouts des autres boutons sur le même principe On ajoute maintenant ce qu'il faut pour éteindre la machine Comment créer les scripts qui vont appeler les commandes Shell Comment autoriser d'autres commandes pour les capacités sudo de hass ? N'hésitez pas à personnaler encore plus le rendu pour que ça corresponde à vos goûts ! Démo: on essaye les commandes ajoutées pour piloter la machine Proxmox Fonctionnalité très simple à utiliser. Probablement un peu plus complexe à mettre en place !