Bonjour, comme dis dans le titre je souhaite accéder à HA via l’appli hors réseau domestique.
J’ai commencé à installer Let’s Encrypt comme ici :
Je suis chez Sosh, dois-je créer un Dyn DNS pour le mettre dans le champ Domaine ?
J’ai des noms de domaines chez Planethoster mais j’ai cette erreur quand je les mets :
Échec de l’enregistrement de la configuration du module complémentaire, Missing required option ‹ domains › in Let’s Encrypt (core_letsencrypt). Got {‹ domains ›: [None, ‹ *.myplanete.org ›], ‹ email ›: ‹ contact@myplanete.org ›, ‹ keyfile ›: ‹ privkey.pem ›, ‹ certfile ›: ‹ fullchain.pem ›, ‹ challenge ›: ‹ http ›, ‹ dns ›: {}}
Merci.
Merci.
Je ne comprends pas tout : sois j’utilise directement mon domaine (en wildcard ?) sois c’est avec DuckDNS ?
Le tout en mode HTTP ou DNS ?
Let’s Encrypt me crée alors une clé SSL en local sur mon HA ? et donc liée à mon nom de domaine ?
Exact
Soit tu utilises ton nom de domaine, mais tu dois configurer Let’s encrypt et faire en sorte que ton nome de domaine pointe vers ton IP publique. Alors tu peux le faire en mode HTTP ou DNS.
Soit tu utilises DuckDNS (qui utilise Let’s encrypt en interne). Mais là ce n’est que en mode HTTP.
Mais mon IP change chez Sosh, comment je fais avec mon nom de domaine ?
Ce qui est proposé sur le forum de Planethoster me semble être une usine à gaz !
Merci à PH pour l’API et surtout pour leur réactivité sur l’ajout du paramètre TTL. Au final j’ai un script qui tourne toutes les 2 minutes sur mon Jeedom local qui me permet de récupérer mon IP publique et qui l’envoie dans un fichier sur mon serveur PH. Sur ce dernier un script tourne également toutes les 2 minutes et si l’IP reçue dans le fichier est différente de l’IP récupérée dans le DNS PH alors l’enregistrement est mis à jour. Du coup pour moi c’est tout bon même si l’enchaînement des scripts et la valeur, même faible du TTL, entraînent une indisponibilité de quelques minutes par semaine. Mais bon pour un service « gratuit » on ne peut pas tout avoir :).
Sinon, il y a plus simple : utiliser un service externe de DynDNS (ceci reste incontournable), mais par contre au lieu de scripter la mise à jour du domaine via l’API, utiliser un champs de type CNAME et ajouter une entrée de cette forme : sous-domaine.domain.tld IN CNAME [nom de domaine DYNDNS]
De fait le sous domaine aura l’IP attribuée au nom de domaine DynDNS, ce qui est exactement le but recherché.
Mais je te l’accorde, ça fait usine à gaz…
Sinon tu peux utiliser Cloudflare avec ton nom de domaine : Cloudflare - Home Assistant
Et ensuite tu configure Let’s encrypt avec Cloudflare.
Bon j’avance.
J’ai laissé tombé le proxy inversé via Synology.
Je passe donc par Duckdns, j’ai créé un fichier Let’s Encrypt. Mon problème précédent était que j’avais un formulaire vide dans le config que je ne supprimais pas d’où l’erreur au lancement.
J’accède bien à mon HA via l’URL de duckdns en Web et via l’appli Smartphone.
Question : que dois-je mettre dans URL interne au niveau de Réseau de mon HA car maintenant en local je n’y accède plus ni via @IP ni via homeassistant.local:8123 mais uniquement via l’URL de DuckDNS ?
J’ai cette info :
URL sur réseau local non valide
Vous avez configuré un certificat HTTPS dans Home Assistant. Vous devez obligatoirement définir une URL interne dont le domaine est couvert par le certificat.
Logique maintenant que le certification s’applique à toute les connexions (modif du fichier configuration.yaml), il faut du HTTPS partout. Et le HTTS (correctement) ça ne fonctionne QU’AVEC le nom de domaine du certificat…
Avec une ip ou le nom local de la machine, ça ne match pas les infos du certificat, et tu as un avertissement de sécurité.
Il te reste la solution de bricoler le DNS local ou de passer pas un vrai proxy (npm ou autre)
je me permet de relancer ce sujet car mon problème a semble t’il quelque similitude avec ce que j’ai pu lire dans les différents posts.
j’ai dans un premier temps résolue mon problème avec Duckdns pour avoir une adresse en https. J’arrive donc à me connecter à HA sur mon pc via mon navigateur.
Par contre niveau accès depuis l’extérieur depuis l’appli android ça ne veut rien savoir.
voila déjà ci-dessous ce qui me fait intervenir dans ce sujet :