Adresse accès HA différente WAN vs. LAN

Mon problème

Bonjour à toutes et tous,

Je viens de configurer un accès extérieur à Home Assistant et bien que je me connecte parfaitement depuis le WAN avec https://home.ndd.tld je suis obligé d’utiliser http://192.168.X.X:8123 pour y accéder depuis le LAN : je ne comprends pas cette différence. Comment utiliser la même adresse en https dans les deux cas ?

192.168.X.X:8123 est l’IP locale de Home Assistant

@Sylvain_G je ne sais pas si cela se fait ou non (n’hésite pas à m’indiquer les bonnes pratiques) mais je me permet de te tagger au regard de ton tuto https://forum.hacf.fr/t/acces-de-l-exterieur-en-https-avec-nginx-proxy-manager/1761?u=turingfan (aujourd’hui fermé mais qui semble correspondre parfaitement à ce sujet).

Ma configuration


Configuration réseau

  1. DynDNS entre mon Routeur et mon registrar
  2. Entrée depuis mon registrar : home.ndd.tld CNAME 0 ndd.tld
  3. DNS local (héberge sur mon routeur) : home.ndd.tld A 86400 192.168.X.X
  4. Reverse Proxy (hebergé sur mon NAS) : https://home.ndd.tld:443http://home.ndd.tld:80
  5. Web sockets activés sur l’entrée du reverse proxy
  6. Port 443 ouvert sur le Routeur et le NAS
  7. J’ai un certificat wildcard associé à ndd.tld.

A noter que j’utilise des reverse Proxy pour de nombreux autres services, eux hebergés sur mon NAS et non le Raspberry, et qu’ils sont tous accessibles via https://service.ndd.tld depuis le WAN/LAN avec cette configuration.

J’ai par ailleurs ajouté le script suivant dans le fichier de config de Home Assistant :

# Reverse proxy
http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 192.168.Y.Y #Adresse IP du Synology qui heberge le revsere proxy

Configuration Home Assistant

System Health

version core-2022.3.4
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.9.9
os_name Linux
os_version 5.10.92-v7l
arch armv7l
timezone Europe/Paris
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 7.4
update_channel stable
supervisor_version supervisor-2022.03.3
docker_version 20.10.9
disk_total 56.6 GB
disk_used 3.3 GB
healthy true
supported true
board rpi4
supervisor_api ok
version_api ok
installed_addons SSH & Web Terminal (10.0.2), Samba share (9.5.1), File editor (5.3.3)
Lovelace
dashboards 1
resources 0
views 1
mode storage
___

PS : il s’agit de mon premier sujet sur ce forum, comment associer des tags au fil ?

Salut,

Dans un autre contexte : tu veux aller faire un tour dans les toilettes (HA):

  • Si tu es dans le jardin (internet) : la première porte que tu ouvres c’est l’entrée (adresse WAN)
  • Si tu es dans le salon (wifi) : tu ouvres directement la porte des WC (adresse LAN)

Techniquement un certificat (pour faire du HTTPS) ça se base sur un nom de domaine (https://home.ndd.tld) et pas sur un adresse IP (http://192.168.X.X:8123). Donc sans bricoler un peu, tu ne peux forcement utiliser la même chose.
Du coup, pourquoi ce besoin ?

Merci @Pulpy-Luke pour ta réponse rapide.

Pardon mais je n’ai pas compris.

Je vais passer un edit sur mon message original pour préciser que j’ai un certificat wildcard associé à ndd.tld.

Dois je le copier sur Home Assistant ? Si oui, comment faire ?

Idéalement je souhaiterais pouvoir accéder à home assistant avec la même adresse - indépendamment du réseau sur lequel se trouve mon client (LAN/VPN/WAN).

C’est exactement ce que je fais avec mes services hébergés sur mon NAS ou mon Routeur et je ne comprends pas pourquoi je n’y arrive pas avec la même configuration mais pour Home Assistant qui est hébergé sur mon Raspberry Pi (lui même derrière mon routeur).

Un simple analogie (pour t’aider à comprendre/comparer), re-relis la suite tu va surement comprendre …

ça ne change pas grand chose… un domaine ça reste un domaine (le wildcard permet de correspondre à tous les sous-domaine du domaine) et c’est toujours pas une ip

ça c’est pas le besoin, c’est ton objectif… Ce qui compte c’est le « pourquoi tu veux » ? Une ou plusieurs adresses c’est pas forcement bloquant
Par ailleurs même en resolvant ton souci de domaine/ip, il te restera à gérer le port : 443 (implicite) quand tu passes pas le WAN c’est différent du 8123 en local, donc techniquement ça sera quand même pas pareil

Sans doute parce que ton NAS fait office de reverse proxy (et te renvoie vers tes services derrière) … Là tu arrives en direct sur HA avec http://192.168.X.X:8123

Merci pour ton retour

Ok j’ai compris l’image

en ligne ça ne change rien, c’est bien pour cela que je veux avoir des adresses type nom de domaine et non des IP

J’ai de nombreux services, je créé aussi beaucoup de raccourci un peu partout (bureau, navigateurs, etc.), j’ai parfois de déconnexions intempestives de certains clients de mon LAN qui passent sur la WAN sans notification.

Toutes ces raisons font que je souhaiterais avoir une unique adresse par simplicité d’usage pour mes utilisateurs (quitte à complexifier la configuration initiale pour moi).

Pourtant mon reverse Proxy pointe parfois vers des services qui ne sont pas héberges sur mon NAS, typiquement ma LiveBox ou l’interface / le bureau de mon Routeur. Dois-je installer un Reverse Proxy sur HA ? Si oui, connais tu un addon ?

Merci encore pour ton aide,

Il y a 2 infos contradictoires dans ta formulation : Si ton reverse proxy permet d’accéder à ton interface livebox, pourquoi tu ne reprends pas la même mécanique pour HA ? ça reste du web dans les 2 cas.

Il faut 2 choses pour arriver à ton objectif :

  • Etre capable de résoudre home.ndd.tld avec le DNS externe pour pointer sur ton adresse WAN MAIS savoir aussi avec un DNS interne qui résoudra avec l’adresse LAN. Ton nas doit pouvoir faire ça.
  • Faire un ReverseProxy type Nginx Proxy Manager par ex

Dernier point, non négligeable. Exposer tout à travers internet, c’est bien… Mais il faut quand même prendre en compte les aspects sécurité… On a vite fait de montrer trop de choses.
Chez moi, l’interface de la box est pas du tout visible en dehors de mon réseau local…

C’est bien ce que j’ai fait : home.ndd.tld A 86400 192.168.X.X et ça ne fonctionne pas mais pour être très précis la box peut être vue comme « en dehors du sous LAN » (créé par mon Routeur et auquel appartient mon RPI).
J’ai essayé la même configuration que pour mon Routeur et là aussi ça ne marche pas : home.ndd.tld CNAME 86400 ns.ndd.tld + ns.ndd.tld CNAME 86400 IP Routeur.

J’en ai bien un sur mon Routeur.

Tu as parfaitement raison, pour ma box j’ai rajouté des condition sur la vue qui imposent des IP LAN ou VPN. Globalement je mets aussi du 2FA dès que je peux.

Tu as mis ça dans quoi ? Si c’est une entrée de ton DNS externe, c’est normal que ça ne fonctionne pas. Depuis internet, il n’y a pas de route pour joindre un ip privée

passe en IPV6 , ainsi l’adresse interne et externe sera la même.

Merci à vous deux @Pulpy-Luke et @flavien.

J’ai revu mes entrée DNS + reverse proxy et fait un petit ipconfig/flushdns et c’est bon : HA est bien accessible via https://home.ndd.tld depuis le WAN et le LAN.

1 « J'aime »