Utilisation Google Assistant avec HomeAssistant accédé en https avec tailscale

Mon problème

Google Assistant ne communique pas avec Homeassistant
erreur: could’nt reach homeaasistant-action

System Information

version | core-2024.4.4
-- | --
installation_type | Home Assistant OS
dev | false
hassio | true
docker | true
user | root
virtualenv | false
python_version | 3.12.2
os_name | Linux
os_version | 6.6.25-haos
arch | x86_64
timezone | Europe/Paris
config_dir | /config

<details><summary>Home Assistant Cloud</summary>

logged_in | false
-- | --
can_reach_cert_server | ok
can_reach_cloud_auth | ok
can_reach_cloud | ok

</details>

<details><summary>Home Assistant Supervisor</summary>

host_os | Home Assistant OS 12.2
-- | --
update_channel | stable
supervisor_version | supervisor-2024.04.0
agent_version | 1.6.0
docker_version | 25.0.5
disk_total | 30.8 GB
disk_used | 3.6 GB
healthy | true
supported | true
board | ova
supervisor_api | ok
version_api | ok
installed_addons | Duck DNS (1.16.0), File editor (5.8.0), NGINX Home Assistant SSL proxy (3.9.0), Tailscale (0.18.0)

</details>

<details><summary>Dashboards</summary>

dashboards | 3
-- | --
resources | 0
views | 0
mode | storage

</details>

<details><summary>Recorder</summary>

oldest_recorder_run | 18 avril 2024 à 18:29
-- | --
current_recorder_run | 25 avril 2024 à 08:38
estimated_db_size | 14.39 MiB
database_engine | sqlite
database_version | 3.44.2

</details>

Bonjour,
pardonnez moi si mon message n’est pas parfait, c’est ma première intervention après avoir beaucoup cherché une réponse dans les forums.

Après une utilisation Home Assistant OS dans une VM (VmWare) sur un PC Windows 10
avec accès externe https par duckdns et nginx totalement fonctionnelle (y compris Home Asistant Companion et Google Assistant), j’ai cherché à réaliser une configuration sans ouverture de port.

j’ai installé tailscale en https (proxy tailscale), tout fonctionne parfaitement sauf Google Assistant qui lors de l’ajout de [test] homeassistant-action arrive sur la page de login de homeassistant, se connecte puis après quelques secondes affiche could’nt reach homeassistant-action retry later

Y a t-il une incompatibilité suite à l’accès par le proxy tailscale?
Quelqu’un a-t-il fait fonctionner une configuration de ce genre?
Merci pour tout retour.

Bonjour,
comme tu passe par tailscale, il y a pas a modifier l’accès de HA pour google assistant dans Fulfillment URL ( console action google dans actions )?

Bonjour et merci pour la réponse,

oui j’ai fait une nouvelle configuration de google assistant (nouveau projet et nouvelle action)
avec
https://oauth-redirect.googleusercontent.com/r/myclientID
https://myhome.mysubdomain.ts.net:443/auth/authorize
https://myhome.mysubdomain.ts.net:443/auth/authorize

et j’arrive bien à me connecter à mon homeassistant quand j’ajoute [test] myaction dans Google Home mais juste après, j’ai le message d’erreur.
Par contre quand j’utilise mon action précédente faite pour duckdns/nginx, tout va bien.

C’est pour celà que je me demandais si le proxy nginx ferait quelque chose que ne fait pas le proxy tailscale ?

Il doit manquer des directives dans tailscale comme l’accès au websocket (ou autre)

Bonjour et merci pour la réponse.
Je vais essayer d’avoir des infos côté tailscale.
Si je trouve une solution, je la mettrai sur le forum.

J’ai la solution!

En ajoutant l’option funnel dans l’addon tailscale, j’ai accès depuis n’importe où (pas seulement depuis une machine du réseau tailnet) en utilisant
https://myhome.mysubdomain.ts.net

Et Google Assistant se connecte et je vois mes devices!

Reste maintenant à savoir quelle est l’accès le plus sécurisé?
duckdns/nginx avec ouverture d’un port sur le routeur (https://mysubdomain.duckdns.org:xxxx)
ou
tailet funnel

Dans les 2 cas tout utilisateur connaissant l’url arrive sur la page de connexion de HomeAssistant

Un spécialiste sécurité peut-il donner son avis ?

pour ma part je préfère tout maitriser de bout en bout et surtout pas passer par des tiers quels qu’ils soient j"ouvre un unique port je passe par mon reverse proxy je génère des certificats let’s encrypt via mon reverse proxy à base de caddyserveur, et la si je tombe sur un hackeur acharné qui casse toutes mes sécurités et bien bravo a lui tant d’acharnement pour pas grand chose, mes données n’intéressent aucun hackeur qui n’en fera aucun beurre il préférera s’attaquer a un service bien plus rémunérateur
et si vraiment je veux durcir ma solution je peux ajouter du fail2ban du crowdsec du filtrage par geoip, mais franchement après surveillance de ma connexion effectivement personne ne s’interesse à moi