Avec l’arrivée de la version 2021.7 ( juillet 2021), Home Assistant bloque désormais les requêtes venant d’un proxy ou reverse proxy si ce dernier n’est pas correctement renseigné dans les paramètres HTTP du fichier de configuration.
Ci dessous un rappel des paramètres existants à renseigner pour le bon fonctionnement de HA.
Toutes les réponses dans la documentation officiel
Comprendre l’intégration http
Si je reprends l’exemple de la documentation illustrant les paramètres http dans fichier configuration.yaml ( dossier config )
http:
server_port: 12345
ssl_certificate: /etc/letsencrypt/live/hass.example.com/fullchain.pem
ssl_key: /etc/letsencrypt/live/hass.example.com/privkey.pem
cors_allowed_origins:
- https://google.com
- https://www.home-assistant.io
use_x_forwarded_for: true
trusted_proxies:
- 10.0.0.200
- 172.30.33.0/24
ip_ban_enabled: true
login_attempts_threshold: 5
Les variables en détails :
- server_port: Permets de changer le numéro de port ( par défaut si non renseigné 8123 )
- ssl_certificate et ssl_key : Permets de renseigner le chemin du certificat ( a utilisé si vous avez installé le module let’s encrypt )
- core_allowed_origins: Permets d’autoriser les demandes venant d’autres domaines ( ou ip ). Par exemple si vous avez un autre serveur domotique sur votre réseau ( jeedom , domoticz ou autres ) , il faudra renseigner l’ip de ce serveur afin de l’autoriser à interroger l’API de votre HA.
- use_x_forwarded_for : Permets de transmettre les demandes provenant d’un proxy ( false par défaut ) , il faudra spécifier la liste des proxy auorisés via le paramètre trusted_proxies
- trusted_proxies: Liste des proxy autorisés , Dans l’exemple ci-dessus le serveur ayant l’adresse 10.0.0.200 est autorisé et le serveur ayant une adresse ip comprise entre ( 172.30.33.1 et 172.30.33.254 ) sera accepté .
- ip_ban_enabled: Permets d’activer la protection par « force brute » pour les tentatives de connexion frauduleuses ( si activé , lors du premier blocage , un fichier ip_bans.yaml sera créé à la racine du dossier config ( indiquant l’adresse IP banni la date et l’heure du blocage )
- login_attempts_threshold: Le nombre de tentatives de connexion autorisé ( ici 5 )
Erreur BAD REQUEST
Pour revenir au problème du jour :
erreur « Bad Request » , il faut donc se concentrer sur les deux paramètres suivants .
Ligne a ajouter ou a modifier dans le fichier configuration.yaml
http:
use_x_forwarded_for: true
trusted_proxies:
- 127.0.0.1 ( si un proxy est installé en local )
- 192.168.4.250 ( adresse IP du reverse proxy ) par exemple reverse proxy du nas synology ou nginx proxy manager , traefik , ou autres ...
- 172.30.33.0/24 ( si vous utilisez le NGINX home assistant proxy )
Commentaire sur “Homme Assistant : Bad Request”
Merci 🙂