Installation Let's Encrypt avec Chalenge DNS sur HA

Bonjour,

Je souhaite faire fonctionner mon HA en https avec Let’s Encrypt Challenge DNS

J’ai bien installé le Module complémentaire Let’s Encrypt qui démarre sans soucis mais est stoppé rapidement vu kil n’a aucune config :upside_down_face:

Comme je veux qu’il fonctionne en https j’ai opté pour le Challenge DNS afin de le sécuriser un peu plus.
Tt se passe bien jusqu’à la partie DNS que je n’arrive pas configurer…

Remerciements

Ma configuration


[center]## System Information

version core-2024.7.4
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.12.4
os_name Linux
os_version 6.6.31-haos-raspi
arch aarch64
timezone Europe/Paris
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
GitHub API Calls Remaining 5000
Installed Version 1.34.0
Stage running
Available Repositories 1451
Downloaded Repositories 3
AccuWeather
can_reach_server ok
remaining_requests 46
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 12.4
update_channel stable
supervisor_version supervisor-2024.08.0
agent_version 1.6.0
docker_version 26.1.4
disk_total 219.4 GB
disk_used 6.5 GB
healthy true
supported true
host_connectivity true
supervisor_connectivity true
ntp_synchronized true
virtualization
board rpi4-64
supervisor_api ok
version_api ok
installed_addons Advanced SSH & Web Terminal (18.0.0), Mosquitto broker (6.4.1), Zigbee2MQTT (1.39.1-1), Studio Code Server (5.15.0), Let’s Encrypt (5.0.26)
Dashboards
dashboards 3
resources 2
views 2
mode storage
Recorder
oldest_recorder_run 30 juillet 2024 à 12:42
current_recorder_run 3 août 2024 à 17:41
estimated_db_size 25.69 MiB
database_engine sqlite
database_version 3.45.3
[/center] ___

Re,

Le type de méthode (challenge dns ou challenge http) ne détermine pas la finalité. Dans les 2 cas (avec la bonne config) ça produit un certificats utilisé pour faire du https.
Par contre, pour utiliser le challenge DNS il FAUT être propriétaire de son nom de domaine ET être mesure d’ajouter des éléments dans le DNS. Sans ça, ce n’est pas possible d’utiliser cette méthode.
C’est bien ton cas ?

Et la partie qui se passe bien, ça corresponds à quelles étapes. En te basant sur quelle documentation ? Et ça donne quoi comme bout de config (sans les infos personnelles) ?
C’est important de partager ces infos, tout le monde ne fait pas ce genre de config tous les jours :wink:

2 « J'aime »

Salut

Dans l’onglet « Documentation » de l’intégration, tu as tout ce qu’il te faut :

Il y a aussi quelques exemples en dessous.
Si tu as du mal en anglais, demande à Google ou autre de t’aider :wink:

Donc quelle est ta difficulté ?

Le challenge DNS permet d’avoir le certificat sans devoir ouvrir le port http, on ouvre sur uniquement le port https.

Après il faut que le module supporte le provider DNS et si oui il suffit de récupérer le token sur le site du provider. DuckDNS permet de le faire.

De mon côté je passe directement par NPM (Nginx Proxy Manager)

1 « J'aime »

Bonjour Pulpy-Luke,

J’ai utilisé, entre autre, la config de la Doc embarquée avec le Module Complémentaire.
J’ai bien avancé… et je suis bien propriétaire du nom de Domaine que je loue chez OVH.
Par contre j’obtiens maintenant une erreur m’indiquant que les clés générées ne sont peut-être pas bonnes.
Voici ma config yaml :

domains:
  - jlbyy.ovh
email: jlxxx@free.fr
keyfile: privkey.pem
certfile: fullchain.pem
challenge: dns
dns:
  provider: dns-ovh
  ovh_endpoint: ovh-eu
  ovh_application_key: 0123456789abcdef0123456789abcdef01234
  ovh_application_secret: 0123456789abcdef0123456789abcdef01234
  ovh_consumer_key: 0123456789abcdef0123456789abcdef01234
key_type: ecdsa
elliptic_curve: secp384r1

Message d’erreur :
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Requesting a certificate for jlyyy.ovh
Error determining zone identifier for jlyyy.ovh: 403 Client Error: Forbidden for url: https://eu.api.ovh.com/1.0/domain/zone/. (Are your Application Key and Consumer Key values correct?)
J’ai peut être mal créé les clés l’interface étant pauvre en infos…
Control panel - OVHcloud

Merci de votre aide :slight_smile:

Bonjour Giga77
Non ça va pas de soucis en Anglais :wink: Merci bien

J’ai trouvé in fine… erreur ds une des clés :slight_smile:
Donc le pb certificat est résolu.

Ceci dit, bien évidemment, un nouveau souci est apparu.
Le serveur Home Assistant ne semble pas vouloir répondre en https et continu d’être en http.
J’ai fait une modif comme vu sur les Forums ds la config de Bitdefender mais pareil y compris en nav. privé.

Je pense que mon HA est configuré pour répondre en http et non pas en https.
Cependant je ne trouve pas la config. pour modifier/tester.

Remerciements :smiley:

De quel serveur parlez vous ?

Merci Dan92,
Je parle de mon serveur Home Assistant

Pb certificat résolu :slight_smile:

Tous mes remerciements

Citation

Citation du message de Dan92

Giga77,
Dixit le site de test https://www.ssllabs.com/ssltest/analyze.html qui fait référence en la matière et le rapport affiché « Assessment failed: No secure protocols supported » il semble que la couche TLS n’est pas installée…

Remerciements

Dans le fichier configuration.yaml, tu dois mettre ça et redémarrer HA :

http:
  ssl_certificate: /ssl/fullchain.pem
  ssl_key: /ssl/privkey.pem

Yes ! :stuck_out_tongue:

Remerciements à vous Tous !

C’est à moi d’aider si je peux le faire maintenant.
Peut-être une Doc…

:sweat_smile: Tout est expliqué dans la documentation de Let’s Encrypt, mais en anglais :

Effectivement je l’avais trouvé mais tu as été plus rapide :wink:

En ts cas tt fonctionne Nickel mm en interne suffit de valider le certificat comme acceptable

C’est carrément parfait !

Tous mes remerciements :index_pointing_at_the_viewer:

Info à partager : le meilleur Tuto que j’ai trouvé ! - En Anglais -
https://theprivatesmarthome.com/how-to/enable-https-using-lets-encrypt-in-home-assistant/

1 « J'aime »

Bonjour Jean-Luc,

quelles sont les actions à réaliser sur le compte OVH pour le DNS Challenge, je ne trouve pas.

Bjr Romu044,

  1. As tu lu le tuto que j’ai envoyé ? - bon en Anglais mais ça passe -
  2. Voici un peu d’aide ici:
    où il est question de l’API ID qui va te générer les clés nécessaires
    2a) Pour se faire tu dois aller sur le site OVH API:
    Pour ça on se rend sur l’interface OVH pour créer ses TOKEN https://api.ovh.com/createToken/

GET /domain/zone/*
PUT /domain/zone/*
POST /domain/zone/*
DELETE /domain/zone/*
2b) ensuite continuer avec l’authent. etc pour te connecter
2c) Tu finiras par atterrir sur la page en Screen Shot


3) Il te suffira de renseigner tous les champs
App. Name: HAPerso par exemple
App. Description: c’est du texte pour décrire ce k c’est. C’est pour toi
Validity: illimité
Rights: Ajoutes les tous (GET, PUT, POST, DELETE)
Restricted IPs: je pense k c’est pour filter sur ton @IP seulement - si @IP fixe :slight_smile: -
4) Click sur Create: It’s all done !

Attention cette manip. en regard du App. Name est irréversible.
Si pas sûr de toi tu peux créer une App. Name genre Toto pour 1 Day.

Voilà

Merci Jean-Luc pour tout le détail de la procédure.
après avoir installé HA j’ai utiliser Duck DNS vu que j’utilisais Let’s Encrypt pour Jeedom.
Maintenant que j’ai fini ma migration de Jeedom vers HA, j’aimerais utiliser Let’s Encrypt pour HA car avec Duck DNS j’ai trop souvent « mettre à jour l’URL externe ».
Dès que j’ai du temps devant moi je mis attelle.
Je risque revenir poser d’autres questions :slightly_smiling_face:

Tkt, nous sommes là pour nous entraider :wink:

1 « J'aime »