Le problème pour joindre Home Assistant depuis l’extérieur
Ici, c’est Home Assistant qui fait tourner la maison : les lumières, le chauffage, la climatisation, la borne de recharge de la voiture, les alarmes. L’application sur le téléphone est le moyen de se servir de tout ça hors de chez soi, et c’est aussi ainsi que la maison sait où sont les téléphones, parce que l’application remonte la position et les capteurs en arrière-plan.
Il faut donc que ça marche quand personne n’est à la maison. La question est de savoir comment.
La réponse habituelle consiste à mettre Home Assistant sur internet avec un nom d’hôte et une page de connexion. Ça marche. Ça veut aussi dire que n’importe qui sur la planète peut atteindre la page de connexion, essayer des mots de passe dessus et sonder tout ce qui se trouve derrière. Une page de connexion, c’est un mot de passe posé entre internet et les serrures de votre porte d’entrée.
Je ne voulais pas de ça. Les exigences étaient courtes :
- Aucune page de connexion accessible au public. Rien ne répond à moins que l’appareil soit l’un des nôtres.
- L’application Home Assistant doit continuer à fonctionner en arrière-plan, sans personne pour passer une connexion à coups de doigt.
- Rien de plus qui tourne sur les téléphones. Pas d’agent VPN.
- L’offre gratuite de Cloudflare. Le tunnel est déjà là.
Ces quatre-là éliminent la plupart des options habituelles avant même de commencer.
Ce que chaque option vous donne vraiment
La documentation de Home Assistant liste elle-même les voies d’entrée : Home Assistant Cloud, un VPN, un reverse proxy ou la redirection de port1. Cloudflare ajoute ses propres versions des deux dernières. Voici comment elles se notent face à ces quatre exigences, ce qui peut mal tourner avec chacune, et ce que chacune coûte en batterie.
| Option | Qui peut atteindre la page de connexion | L’application marche en arrière-plan | En plus sur le téléphone | Ce que ça coûte vraiment | Risques | Coût en batterie | IPv4 et IPv6 |
|---|---|---|---|---|---|---|---|
| Redirection de port vers Home Assistant | Tout le monde | Oui | Rien | Gratuit sur la facture. Chaque scan et chaque mot de passe tenté tourne sur Home Assistant, et un DDoS atterrit sur votre ligne domestique | Page de connexion ouverte à tous les scanners. Un trou dans le routeur droit sur le LAN. Une ligne domestique derrière un CGNAT n’a aucun port à rediriger2. Application : marche sur Android et iPhone, ce n’est qu’une URL | Normal | IPv4 exige une adresse publique à vous, pas de CGNAT. IPv6 exige une ouverture dans le pare-feu, et un téléphone sur un Wi-Fi uniquement IPv4 ne peut pas l’atteindre |
| Cloudflare Tunnel, rien d’autre | Tout le monde | Oui | Rien | Gratuit. Cloudflare encaisse un DDoS, mais chaque mot de passe tenté tourne encore sur Home Assistant | Page de connexion ouverte à tous les scanners et listes de mots de passe. Un mot de passe deviné et un attaquant a une machine sur votre LAN. Application : marche sur Android et iPhone, ce n’est qu’une URL | Normal | Les deux. Cloudflare répond sur l’un ou l’autre3, et la maison ne fait qu’appeler vers l’extérieur4 |
| Tunnel plus une connexion Cloudflare Access | Seulement après connexion | Non, les appels en arrière-plan tombent sur la connexion | Rien | Gratuit. Les inconnus s’arrêtent chez Cloudflare, aucune charge sur Home Assistant | La position et les capteurs cessent de remonter sans que personne ne le remarque. Seul Home Assistant est publié, derrière la connexion. Application : ne sait pas envoyer l’en-tête de service token dont Access a besoin5 | Normal | Les deux, comme le tunnel |
| Tunnel plus réseau privé WARP | Personne à l’extérieur | Oui | Agent WARP | Gratuit. Rien de public à scanner | Tourne sur des ports UDP qu’un réseau d’hôtel ou de bureau peut bloquer6. Android n’autorise qu’un VPN à la fois7. Une route peut mettre tout le LAN sur chaque téléphone inscrit8. Application : n’a besoin de rien, mais WARP a des clients Android et iPhone et aucun pour une montre Wear OS9 | Plus élevé, un VPN toujours actif | Les deux. L’agent atteint Cloudflare sur l’un ou l’autre6 |
| Home Assistant Cloud | Tous ceux qui ont l’URL | Oui | Rien | 6,50 £ par mois ou 65 £ par an10. Les mots de passe tentés tournent encore sur Home Assistant | Page de connexion publique. L’entreprise de quelqu’un d’autre tient la voie d’entrée : aucun accès quand leur service est en panne. Un mot de passe deviné et un attaquant a une machine sur votre LAN. Application : marche sur Android et iPhone | Normal | À la maison, l’un ou l’autre, il appelle un relais Nabu Casa11. L’IPv6 côté téléphone n’est pas documenté |
| Redirection de port vers nginx ou Caddy avec un certificat client | Seulement les appareils qui détiennent un certificat | Oui | Un certificat et la racine de votre propre AC | Gratuit sur la facture. Un inconnu coûte une poignée de main TLS sur le proxy, jamais une connexion à Home Assistant, et un DDoS atterrit sur votre ligne domestique | Un trou dans le routeur vers le proxy, pas vers Home Assistant. Vous faites tourner l’AC, et une CRL périmée bloque tous les téléphones. Application : comme la ligne certificat ci-dessous | Normal | Comme la redirection de port. nginx doit être configuré pour écouter en IPv6, Caddy le fait par défaut |
| Tunnel plus certificat client | Seulement les appareils qui détiennent un certificat | Oui | Un certificat | Gratuit. Les inconnus sont refoulés à la périphérie, aucune charge sur Home Assistant | Un téléphone perdu entre tant qu’il n’est pas révoqué. Du HTTPS simple sur le 443, bloqué seulement là où le web l’est. Seul Home Assistant est publié, et seulement aux détenteurs de certificat. Application : prise en charge sur Android ; l’application iPhone n’est pas documentée ; Wear OS a besoin du fichier PKCS12 à la configuration12 | Normal | Les deux, comme le tunnel |
Le tunnel règle aussi la question IPv4 contre IPv6. Cloudflare répond au téléphone sur celui qu’il a, et la maison ne fait jamais qu’appeler vers l’extérieur, donc une ligne domestique derrière un CGNAT, ou une ligne avec IPv6 et aucune IPv4 publique, marche comme n’importe quelle autre. Une redirection de port exige une adresse IPv4 publique à vous, ou IPv6 aux deux bouts. Pourquoi tant de lignes domestiques n’ont toujours ni l’un ni l’autre est une histoire à part, dans Nous n’avons jamais manqué d’adresses. Nous avons manqué d’effort..
Le tunnel seul corrige le routeur, pas l’exposition. cloudflared n’établit que des connexions sortantes, donc il n’y a aucun port entrant à rediriger13, mais le nom d’hôte qu’il publie sert toujours la page de connexion à quiconque la demande.
Est-ce que Cloudflare Access règle le problème ? Pour un navigateur, oui, et c’est ainsi que s’en servent les postes de travail de VDI Zero Trust sans la facture cloud. Pour l’application, ce n’est pas la bonne forme. Access place une personne devant une page de connexion, et le trafic d’arrière-plan de l’application n’a pas de personne. Le contournement habituel est un service token envoyé comme en-tête, et l’application ne sait pas en envoyer. Sa web view ne donne aucun moyen d’ajouter des en-têtes aux requêtes POST ni aux WebSockets, et c’est ainsi que l’application parle à Home Assistant, et la discussion des développeurs aboutit aux certificats clients comme « a better (more secure) alternative »5.
WARP ferait l’affaire, et il a été écarté parce qu’il veut dire un agent sur chaque téléphone. Un VPN coûte plus de batterie qu’un lien normal, parce que c’est un tunnel tenu ouvert toute la journée, que l’application parle ou non. Il tourne en UDP sur des ports qu’un réseau d’hôtel ou de bureau peut rejeter, ce qui vous laisse dehors précisément quand vous êtes loin6. Et Android ne fait tourner qu’un VPN à la fois7, donc WARP et un VPN de travail ne peuvent pas être actifs ensemble. Home Assistant Cloud est un bon service et finance le développement, mais c’est un abonnement, et l’URL sert toujours une page de connexion à quiconque la trouve. Il confie aussi la voie d’entrée de votre maison à l’entreprise de quelqu’un d’autre. Leur service, leur compte, leur prix, leurs conditions. C’est une perte de souveraineté, et c’est le marché que chaque offre cloud vous demande de conclure : le confort maintenant, quelqu’un d’autre aux commandes pour de bon.
Cloudflare n’est pas différent par nature, et il serait malhonnête de prétendre le contraire. Chaque option à tunnel de ce tableau le met sur le chemin, et il termine le TLS à sa périphérie, et c’est d’ailleurs ainsi que la règle WAF peut lire la vérification de certificat. La différence, c’est ce qu’il détient. Ici, il tient la porte. Home Assistant, ses données et ses mots de passe restent dans la maison, et si Cloudflare disparaît la maison continue de tourner, c’est la dernière ligne du tableau sous « Là où ça coince ». Si même ça, c’est plus de confiance que vous ne voulez en céder, la version nginx et Caddy fait la même vérification dans votre propre maison, avec votre propre AC, et prend en échange la redirection de port et les corvées de l’AC.
Reste le certificat client. Le téléphone prouve ce qu’il est avant que Home Assistant ne voie un seul octet.
Ce que coûte vraiment d’être ouvert sur internet
Gratuit sur la facture, ce n’est pas gratuit. Tout ce qui répond à internet le paie en charge machine. Chaque mot de passe tenté contre la connexion propre de Home Assistant est une vérification bcrypt à 12 tours, et il en lance une même quand le nom d’utilisateur n’existe pas, donc un inconnu qui devine coûte exactement ce que coûte votre propre connexion14. Cette charge tombe sur la machine qui fait tourner la maison, jour et nuit, aussi longtemps que les scanners continuent de venir. Et ils continuent de venir.
Une redirection de port est pire encore, parce qu’elle met votre adresse domestique en jeu. Un DDoS qui la vise remplit votre connexion, et alors c’est toute la maison qui sort d’internet, pas seulement Home Assistant. Derrière le tunnel, c’est Cloudflare qui prend l’inondation, sur toutes les offres y compris la gratuite15, et il n’a plus jeté un client à cause de la taille d’une attaque depuis 201716. Le certificat fait le dernier pas. Un inconnu est refoulé à la périphérie, et Home Assistant ne dépense rien pour lui.
Puis il y a le réseau sur lequel se trouve Home Assistant. Ce n’est pas une application web sur une île. Il est sur le LAN de la maison à côté des caméras, du NAS et des portables, et il détient les identifiants d’un bon nombre d’entre eux. Passez sa connexion et vous avez une machine à l’intérieur de la maison, pas juste un tableau de bord. Une redirection de port est un trou dans le routeur pointé droit sur cette machine. WARP se trompe dans l’autre sens, en étant trop généreux : une route peut publier tout un réseau privé à chaque téléphone inscrit, et le restreindre est une politique séparée qu’il faut penser à écrire8. Perdez un téléphone configuré ainsi et celui qui le trouve est sur votre LAN. Le certificat publie un seul nom d’hôte, aux appareils qui en détiennent un, et rien d’autre sur le réseau n’est joignable de l’extérieur.
Le mTLS avec l’offre gratuite : quelle moitié est gratuite
Une bonne partie des conseils en ligne disent que le mTLS chez Cloudflare exige Enterprise. Ce n’est pas le cas. Cloudflare vend le mTLS deux fois, et un seul des deux exige Enterprise.
| Certificats clients plus règle WAF | mTLS de Cloudflare Access | |
|---|---|---|
| Offre | Free, Pro, Business, Enterprise | Zero Trust Enterprise seulement |
| Autorité de certification | Gérée par Cloudflare (apporter la vôtre, c’est Enterprise) | Uniquement la vôtre |
| Certificats inclus | 100 actifs par zone | Sans objet |
| Appliqué par | Une règle WAF personnalisée que vous écrivez | Une politique Access |
| Révocation | Intégrée, vérifiée par la règle | Votre propre CRL et un Worker |
C’est la première colonne qui nous intéresse. Apporter votre propre AC, c’est Enterprise chez Cloudflare. Hors de Cloudflare, ça ne coûte rien, et des certificats clients depuis step-ca le couvre. Le comparatif de Cloudflare lui-même le dit clairement : l’offre Application Security inclut 100 certificats clients par zone gratuitement, tandis que le mTLS d’Access est une fonction Zero Trust Enterprise17. Les offres Free, Pro et Business ont 100 certificats actifs par zone, et en révoquer un libère sa place immédiatement18. Deux téléphones en utilisent deux.
L’offre gratuite a aussi cinq règles WAF personnalisées19. Il en faut une.
Comment fonctionne la vérification
Cloudflare fait le travail à sa périphérie. Quand le mTLS est activé pour un nom d’hôte, la poignée de main TLS demande un certificat au client20. Ça seul ne bloque rien. Un client qui n’envoie aucun certificat se connecte quand même. Il arrive simplement avec le champ de vérification à faux.
Le blocage, c’est la règle WAF. Cloudflare expose le résultat de la vérification de certificat sous forme de champs dans son langage de règles21 :
(http.host eq "ha.example.com"
and (not cf.tls_client_auth.cert_verified
or cf.tls_client_auth.cert_revoked))
Action: Block
La deuxième ligne est là pour une raison. Un certificat révoqué est toujours vérifié, parce que cert_revoked à vrai veut dire que cert_verified est vrai aussi22. Ne testez que le premier champ et un certificat révoqué entre tout droit. Révoquer le certificat d’un téléphone perdu ne veut rien dire si la règle ne le demande pas.
Rendons à César ce qui lui appartient : les gens du fil Android de Home Assistant ont trouvé cette règle et l’ont publiée5. Bon travail, et ça m’a épargné pas mal de recherches.
Le côté Home Assistant
Il faut dire à Home Assistant qu’il est derrière un proxy, et ce n’est pas facultatif. Les requêtes venant d’un reverse proxy sont bloquées par conception tant qu’on n’a pas dit à Home Assistant de lui faire confiance23. Le connecteur cloudflared du tunnel en est un.
Depuis 2026.8, ces réglages vivent dans l’interface, sous Settings → System → Network → HTTP server, et non dans configuration.yaml23. Les enregistrer redémarre Home Assistant, et un administrateur a ensuite cinq minutes pour confirmer les nouveaux réglages avant qu’ils ne reviennent en arrière d’eux-mêmes. C’est un filet de sécurité qu’il vaut mieux connaître avant de s’enfermer dehors.
| Réglage | Valeur | Pourquoi |
|---|---|---|
| Trust X-Forwarded-For | Activé | Sans lui, les requêtes relayées sont refusées |
| Trusted proxies | L’adresse de la machine cloudflared seulement | Seule cette machine peut prétendre relayer pour quelqu’un |
| Enable IP banning | Activé, une poignée de tentatives | Les bannissements tombent sur la vraie adresse du client, pas celle de Cloudflare |
| Home Assistant URL, Internet | https://ha.example.com | L’application la reprend comme URL externe |
L’entrée des proxies de confiance est étroite exprès. Faites confiance à tout un sous-réseau et n’importe quel appareil dedans peut falsifier l’adresse du client, ce qui rend la liste de bannissement inutile.
Puis l’application. La documentation de l’application Companion couvre cette installation nommément. Si Home Assistant est derrière un reverse proxy qui fait de l’authentification TLS par client, l’application demande un certificat, et elle le veut installé comme « VPN & app user certificate »12. Sur un téléphone sans certificat, vous obtenez une erreur ou un écran vide, ce qui est le bon résultat pour un téléphone qui ne devrait pas entrer.
Réglez le niveau de sécurité de connexion de l’application sur Most secure. L’adresse locale en http:// simple n’est alors utilisée que sur le Wi-Fi de la maison, et partout ailleurs l’application utilise le nom d’hôte HTTPS ou refuse purement et simplement de se connecter24. Il faut l’autorisation de localisation réglée sur « Allow all the time » sous Android, ce dont l’application a de toute façon besoin pour la position en arrière-plan.
La construction, étape par étape
| Étape | Où | Quoi |
|---|---|---|
| 1 | Tunnel Cloudflare | Ajouter un nom d’hôte public, ha.example.com, pointant sur Home Assistant sur le LAN |
| 2 | SSL/TLS → Client Certificates | Créer un certificat par téléphone. Copier le certificat et la clé, ils ne sont plus affichés ensuite18 |
| 3 | Client Certificates → Hosts | Activer le mTLS pour ha |
| 4 | Security → WAF → Custom rules | Ajouter la règle de blocage ci-dessus |
| 5 | SSL/TLS → Edge Certificates | Always Use HTTPS activé, TLS 1.2 minimum |
| 6 | Home Assistant → Network | Proxy de confiance, bannissement d’IP, URL externe, puis confirmer dans les cinq minutes |
| 7 | Une machine Linux | Construire un fichier PKCS12 par téléphone |
| 8 | Chaque téléphone | L’installer comme certificat utilisateur VPN et applications, puis régler l’application sur Most secure |
| 9 | Test | Données mobiles, Wi-Fi coupé. L’application se connecte. Un navigateur sans le certificat est bloqué |
Un certificat par téléphone, pas un partagé. Quand un téléphone est perdu, vous révoquez ce téléphone-là et l’autre continue.
Le téléphone veut le certificat et la clé dans un seul fichier PKCS12. Cloudflare vous remet du PEM, alors assemblez-les :
openssl pkcs12 -export -in phone1.pem -inkey phone1.key \
-name "ha-phone1" -out phone1.p12
C’est là que les gens coincent. Android est pointilleux sur le chiffrement à l’intérieur du fichier, et la documentation de Home Assistant dit d’essayer d’abord le défaut actuel et de ne se rabattre sur un conteneur legacy avec l’option -legacy d’OpenSSL que s’il est refusé25. Le même conseil revient dans les fils de la communauté où un fichier qui s’installait très bien sur du matériel Apple était rejeté par Android5.
Le chemin dans les menus pour l’installer change selon les fabricants de téléphones et les versions d’Android. La page de Google pour le Pixel est un point de départ26. Quoi que disent les menus, c’est le magasin d’identifiants utilisateur que vous voulez, pas le magasin d’AC.
Là où ça coince
Rien ici n’est exempt d’aspérités, alors les voici.
| Cas | Ce qui se passe | Que faire |
|---|---|---|
| Téléphone perdu ou vendu | Son certificat marche encore tant qu’il n’est pas révoqué | Le révoquer dans Client Certificates. La règle vérifie la révocation |
| Montre Wear OS | Ne peut pas utiliser le certificat installé sur le téléphone | Fournir le fichier PKCS12 pendant la configuration de la montre elle-même12 |
| iPhone | La documentation Companion marque cette section Android seulement | Tester avant de s’y fier |
| Navigateur d’un portable hors de la maison | Bloqué, pas de certificat | Installer un certificat dans le navigateur, ou l’accepter |
| Cloudflare en panne | Plus aucun accès à distance | La maison tourne toujours en local. C’est tout l’intérêt de la faire tourner en local |
Celui du navigateur est une fonction, pas un défaut. Tout ce qui n’a pas de certificat est un inconnu, et ça comprend mon propre portable tant que je ne lui en ai pas donné un.
Une clé, pas un mot de passe
Un mot de passe est quelque chose que vous savez, et tout ce que vous savez peut être deviné, hameçonné, réutilisé ou divulgué par la fuite de quelqu’un d’autre. Mettez une page de mot de passe sur internet et vous êtes entré dans une partie de chiffres contre tous ceux qui ont un botnet et une liste de mots. Vous pouvez la gagner pendant des années. Il suffit de la perdre une fois.
Un certificat est quelque chose que l’appareil détient. Personne ne le devine. Personne ne l’essaie un million de fois, parce que la requête est jetée à la périphérie avant qu’il y ait quoi que ce soit contre quoi l’essayer. La page de connexion est toujours là et elle compte toujours, mais c’est maintenant le second verrou, pas le seul.
Ce qui se trouve derrière cette page n’est pas une application web. Ce sont les serrures, le chauffage, la borne de recharge et les caméras. Traitez-la comme la porte d’entrée, parce que c’est ce qu’elle est.
Ce à quoi je reviens sans cesse, c’est que rien de tout ça ne coûte quoi que ce soit. Cloudflare donne les certificats et la règle avec l’offre gratuite. Home Assistant documente le côté application dans sa propre documentation Companion. La seule chose que ça coûte, c’est une soirée à lire correctement les manuels, et en tant que tel le défaut d’une page de mot de passe face à tout internet est un choix que les gens font en ne les lisant pas.
Home Assistant — Remote access — Home Assistant Cloud, VPN, reverse proxy et redirection de port comme voies d’entrée. ↩︎
RFC 6598 — IANA-Reserved IPv4 Prefix for Shared Address Space — la plage 100.64.0.0/10 du Carrier-Grade NAT, où de nombreux clients partagent une adresse publique et aucun n’obtient de port entrant. ↩︎
Cloudflare — IPv6 compatibility — activé par défaut sur toutes les offres ; Cloudflare « auto generates AAAA DNS records to allow IPv6 clients to connect » aux noms d’hôte relayés. ↩︎
Cloudflare — Tunnel run parameters, edge-ip-version —
cloudflaredse connecte à Cloudflare en IPv4 par défaut ;6ouautolui fait utiliser IPv6. ↩︎home-assistant/android PR #3593 — Add custom header support — la web view ne sait pas ajouter d’en-têtes aux requêtes POST ou WebSocket ; certificats clients suggérés à la place des service tokens ; utilisateurs signalant des problèmes de format de certificat sous Android. ↩︎ ↩︎ ↩︎ ↩︎
Cloudflare — Cloudflare One client firewall requirements — WireGuard sur UDP 2408 avec repli sur UDP 500, 1701 et 4500 ; MASQUE sur UDP 443. ↩︎ ↩︎ ↩︎
Android Developers — VpnService — « There can be only one VPN connection running at the same time. » ↩︎ ↩︎
Cloudflare — Connect an IP/CIDR — « You can connect an entire private network, a subnet, or an application defined by a static IP » ; les politiques réseau Gateway pour filtrer ce trafic sont une étape séparée, recommandée. ↩︎ ↩︎
Cloudflare — Download Cloudflare One Client — clients pour Windows, macOS, Linux, iOS 15+, Android 5.0+ et ChromeOS ; aucun client Wear OS listé. ↩︎
Nabu Casa — Pricing — Home Assistant Cloud à 6,50 £ par mois ou 65,00 £ par an, taxes non comprises. ↩︎
NabuCasa/hass-nabucasa — remote.py — Home Assistant s’enregistre auprès de Nabu Casa, reçoit un
serverrelais, et s’y connecte en sortie. ↩︎Home Assistant Companion — Getting Started, TLS client authentication — installer comme « VPN & app user certificate » ; Wear OS a besoin du certificat fourni en PKCS12 pendant la configuration initiale. ↩︎ ↩︎ ↩︎
Cloudflare — Cloudflare Tunnel —
cloudflaredcrée des connexions uniquement sortantes, donc il n’y a aucun écouteur entrant sur l’origine. ↩︎Home Assistant core — auth/providers/homeassistant.py — mots de passe hachés avec bcrypt à 12 tours ; un nom d’utilisateur inconnu lance quand même un
checkpwfactice « to make timing the same as if user was found ». ↩︎Cloudflare — DDoS Protection — détection et atténuation automatiques des DDoS, « Available on all plans ». ↩︎
Cloudflare blog — Unmetered Mitigation — « Cloudflare will no longer terminate customers, regardless of the size of the DDoS attacks they receive, regardless of the plan level they use. » ↩︎
Cloudflare — Use mTLS with Cloudflare protected resources — « 100 Client Certificates per Zone are included for free » ; le mTLS d’Access est une « Zero Trust Enterprise only feature ». ↩︎
Cloudflare — Create a client certificate — 100 certificats actifs par zone sur Free, Pro et Business ; révoquer libère la place ; certificat et clé ne sont plus affichés après la création. ↩︎ ↩︎
Cloudflare — WAF custom rules — tableau de disponibilité : cinq règles personnalisées sur l’offre Free. ↩︎
Cloudflare — Enable mTLS — activer le mTLS par nom d’hôte, puis l’appliquer avec une règle WAF personnalisée. ↩︎
Cloudflare — Client certificate variables — les champs mTLS disponibles pour les règles WAF personnalisées. ↩︎
Cloudflare — cf.tls_client_auth.cert_revoked — « When true, the cf.tls_client_auth.cert_verified field is also true. » ↩︎
Home Assistant — HTTP integration — reverse proxies, proxies de confiance et bannissement d’IP ; réglages passés dans l’interface en 2026.8, et annulés s’ils ne sont pas confirmés dans les cinq minutes. ↩︎ ↩︎
Home Assistant Companion — Connection security level — Most secure n’utilise une URL non chiffrée que sur le réseau de la maison ; exige la localisation « Allow all the time » sous Android. ↩︎
Home Assistant Companion — Networking, TLS Client Authentication — essayer d’abord le PKCS12 par défaut actuel, le conteneur OpenSSL
-legacyseulement si ça échoue. ↩︎Google — Pixel Phone Help, Add & remove certificates — installer un certificat à la main sur un Pixel. ↩︎