Suite à notre test de Home Assistant Green, nous vous avons présenté l’interface de Home Assistant et expliqué comment installer File editor, un add-on qui nous servira aujourd’hui à l’installation de Duck DNS sous Home Assistant.
Duck DNS est un service DynDNS (ou DDNS) avec support de Let’s Encrypt. C’est un outil gratuit qui permet d’accéder à Home Assistant depuis l’extérieur de façon simple et sécurisée grâce à un add-on officiel disponible dans la boutique des modules complémentaires. Il est en plus indispensable pour préparer notre système à l’intégration Amazon Alexa comme de Google Home.
Ce tutoriel peut paraître long et complexe, mais ce n’est qu’une impression car nous vous guidons étape par étape, clic après clic. Si, malgré tout, vous avez une question ou un problème, n’hésitez pas à lire les commentaires ci-dessous.
Mises à jour : - 19/01/2024 - Nouvelle version pour Home Assistant 2024 : procédure testée et approuvée sur la box domotique Home Assistant Green avec Home Assistant OS 11.5 (core release 2024.2.0) ; - 12/02/2024 - Ajout de conseils à la résolution des problèmes de connexion ; - 15/03/2024 - Ajout de la procédure de redirection de port sur Freebox OS 4.6 ;
Accéder de l’extérieur à Home Assistant : le duo parfait avec Duck DNS !
- Pour commencer, rendez-vous dans Paramètres, puis dans l’onglet Modules complémentaires, cliquez sur le bouton « Boutique des modules complémentaires » ;
- Recherchez « Duck DNS » dans les add-ons officiels, puis cliquez dessus ;
- Installez le plugin en cliquant tout simplement sur « installer » :
Paramétrer Duck DNS pour Home Assistant
Pendant que le module complémentaire (add-on) s’installe sous Home Assistant, nous allons configurer le service DuckDNS. Pour cela, ouvrez le site duckdns.org .
- Connectez-vous à l’aide d’un des services proposés : nous avons choisi GitHub ;
- Créez votre sous-domaine : lesalexiens.duckdns.org par exemple ;
- Cliquez sur « add domain » : vos identifiants vont apparaitre ainsi que votre jeton ou token ;
Configuration de l’adresse IP pour accéder de l’extérieur à Home Assistant
- Avant de poursuivre nous allons vérifier notre adresse IP sur le site whatismyipaddress.com ;
- Copiez vos adresses IP IPv4 et IPv6, nous allons les renseigner sur DuckDNS.org ;
- Sur DuckDNS.org, collez vos adresses IPv4 et IPv6 dans les cases « current IP » puis cliquez sur « update ip » :
Configuration add-on DuckDNS pour Home Assistant
Notre module complémentaire DuckDNS étant installé et le service DynDNS paramétré, nous allons passer à sa configuration sous Home Assistant :
- Rendez-vous sur la page du module DuckDNS sous Home Assistant et cliquez sur Configuration ;
- Cliquez sur les trois points en haut à droite puis sur Configuration en YAML ;
- Copiez et collez le code YAML ci-dessous (utilisez le bouton pour conserver l’indentation) :
- Remplacez
votredomaine.duckdns.org
par votre nom de sous-domaine ; - Indiquez votre token (pas celui-ci, hein ?) :
35cdgql5-xxxx-xxxx-xxxx-6e2e6e8598e1
- Modifiez
accept-terms
surtrue
- Sauvegardez votre configuration en cliquant sur Enregistrer.
domains: - votredomaine.duckdns.org token: 35cdgql5-xxxx-xxxx-xxxx-6e2e6e8598e1 aliases: [] lets_encrypt: accept_terms: true algo: secp384r1 certfile: fullchain.pem keyfile: privkey.pem seconds: 300
- Remplacez
- Dans l’interface utilisateur, ça devrait donner ça :
- Il ne nous reste plus qu’à démarrer l’add-on DuckDNS pour Home Assistant d’un simple clic sur Démarrer.
Ajouter un certificat à Home Assistant
Nous allons ajouter un certificat Let’s Encrypt à Home Assistant afin que notre connexion soit sécurisée (HTTPS). Pour cela rien de très compliqué, rendez-vous sur le module File editor puis sélectionnez le fichier configuration.yaml :
Retirez les # devant http
ainsi que la ligne base_url
puis ajoutez les lignes suivantes :
http: ssl_certificate: /ssl/fullchain.pem ssl_key: /ssl/privkey.pem
Votre fichier configuration doit ressembler à la capture d’écran ci-dessus. Une fois cela ajouté, sauvegardez le fichier depuis la petite disquette en haut à droite de l’écran.
ssl_certificate
et ssl_key
permet d’indique à Home Assistant le chemin de nos certificats et d’établir une connexion sécurisée en SSL. Vous savez, le fameux HTTPS avec le petit cadenas vert devant… C’est ça !
Ensuite, il vous faut vérifier vos adresses interne et externe dans : Paramètres > Système > Réseau
- Internet : vous devez utiliser https et non http pour l’accès local comme externe.
- Réseau local : indiquez l’IP locale de votre serveur suivi du port 8123. Votre certificat SSL n’est valable que pour votre adresse externe, il est normal que votre navigateur affiche un avertissement quand vous accéder à votre serveur domotique depuis son adresse locale, le certificat ne correspondant pas à cette dernière.
Enfin, redémarrez votre serveur afin que le système prenne bien en charge nos modifications depuis la page : Paramètres > Système > Redémarrer (bouton en haut à droite)
Paramétrer votre routeur
Nous allons maintenant permettre à notre serveur domotique Home Assistant d’être accessible de l’extérieur en ouvrant le port 8123 de notre routeur ou box Internet. Chez Orange/Sosh, il suffit de saisir livebox/ ou 192.168.1.1 dans la barre d’adresse. Cela peut être 192.168.0.1 chez votre opérateur et/ou en fonction de votre paramétrage réseau.
Redirection de port sur Livebox
Une fois connecté, rendez-vous sur : Paramètres avancés > Réseau
Sur la page réseau sélectionnez l’onglet NAT/PAT (ou port forwarding) :
Redirection de port sur SFR Box
Merci Yann pour la capture d’écran !
Nous allons créer une règle qui redirigera le port 8123 de notre box internet vers notre port interne utilisé par Home Assistant qui est 8123 également.
- Application/Service : HTTPS
- Port interne : 8123
- Port externe : 8123
- Protocole : TCP
- Équipement : Sélectionnez ou insérez l’adresse IP de votre Raspberry Pi utilisée pour notre serveur Home-Assistant.
Une fois créée, la règle s’affichera juste en dessous comme sur la capture d’écran précédente. Celle-ci sera donc activée et fonctionnelle.
Redirection de port sur Freebox
- Connectez-vous à votre Freebox via 192.168.1.254 ;
- Allez à « Paramètres de la Freebox »,
- Dans « Gestion des ports », cliquez sur « Ajouter une redirection » ;
- IP Destination : IP de votre serveur Home Assistant
- Redirection active : cochée
- IP source : Toutes
- Protocole : TCP
- Port de début : 8123
- Port de fin : 8123
- Port de destination : 8123
- Commentaire : Redirection DuckDNS
- Cliquez sur Sauvegarder.
Adresse IP fixe
Cela se fait également depuis votre routeur (box internet). Depuis l’onglet DHCP vous pouvez paramétrer les baux DHCP statiques comme ci dessous :
Remplacez l’adresse IP par celle de votre raspberry et l’adresse MAC également.
Finaliser l’installation
Pour finaliser l’installation, il ne nous reste plus qu’à redémarrez notre serveur domotique Home Assistant une seconde fois puis accédez à votre instance depuis votre URL créée. (Exemple: https://lesalexienstuto.duckdns.org:8123 ).
Résolution des problèmes
Suite à quelques commentaires peu agréables, un individu allant jusqu’à nous rendre responsable d’avoir « cassé son Home Assistant », nous tenons à préciser que la procédure est parfaitement fonctionnelle à la date indiquée en début de tutoriel. Nous la testons à chaque mise à jour (5 fois en 4 ans) et l’approuvons à chaque fois pour la dernière version de Home Assistant OS disponible à ce moment là.
Néanmoins, il n’est pas impossible que vous rencontriez des problèmes de connexion à cause de votre configuration. Si vous n’arrivez plus à accéder à Home Assistant, commencez par vider le cache de votre navigateur, puis vérifiez la configuration de votre réseau local (ip fixe, redirection du port 8123, pare-feu de votre routeur / box Internet, double NAT,etc.). Notez également que l’application compagnon requiert un certificat valide, vous ne pourrez donc pas utiliser l’adresse locale avec https et vous devez y modifier l’adresse externe.
Enfin, n’hésitez pas à lire les commentaires ci-dessous ou à rejoindre notre groupe Facebook, vous y trouverez généralement quelqu’un pour vous aider (mais nous ne sommes pas disponibles H24). Si, malgré tout ça, vous êtes toujours bloqué, nous vous invitons à considérer l’abonnement Nabu Casa (c’est 75€/an, mais ça fonctionne à tous les coups).