Accès à home assistant depuis l'extérieur avec un vpn gratuit et opensource

VDSL 100/30 , donc pas mal.

Oui, donc c’est quoi le problème de surcharge ?

Je suppose que si je transmets toute ma navigation (HA, vidéo,…) de mon smartphone vers ma connexion à domicile via le tunnel wireguard, je vais utiliser une partie de ma bande passante VDSL. Et, comme je ne suis pas le seul à utiliser la connexion VDSL, n’est-ce pas encore surcharger celle-ci inutilement, sauf pour me connecter à HA bien sûr.

Je me trompe ?

Hello,

Tout dépend des « adresse autorisées » dans ton fichier de conf injecté sur le wireguard de ton smartphone.
Si tu n’y renseigne que l’adresse de ton HA, seul cet accès utilisera la BP de ton VDSL, les autres « flux » utiliseront ta liaison 4/5G ou wifi

@+

1 « J'aime »

Tout dépend des « adresse autorisées » dans ton fichier de conf injecté sur le wireguard de ton smartphone.

Intéressant, mais je ne vois pas la possibilité dans l’interface de mon routeur de sélectionner des adresses IP spécifiques pour wireguard .

c’est dans le fichier de conf généré par wireguard et que tu as importé sur ton smartphone, pas sur ton routeur

What does WireGuard AllowedIPs actually do? - TechOverflow

@+

1 « J'aime »

Home assistant, la navigation, etc consomment très peu de bande passante.

La vidéo oui. Mais dans une certaine mesure. Tu peux afficher le débit temps réel sur la barre du haut dans Android.

A une époque j’étais à 3,5mbs et là chaque octets compte.

J’ai modifié, le fichier de configuration de wireguard, en mettant que l’adresse IP de HA et cela fonctionne. Pour y accéder, je dois néanmoins mettre http://adresse_IP:port

[Peer]

Name = domaine.xxxx

PublicKey = …

AllowedIPs = 192.168.xxxx.xxx/32

PersistentKeepalive = 60

2 « J'aime »

Tu peux m’expliquer pourquoi tu mets un masque 32 au lieux de 16 par exemple ?

/32 C’est le masque de sous réseau pour une seule IP (host)
/24 pour un réseau avec 254 hosts (classique)

Le /16 , ça donne 65024 hosts atteignables sur ton réseau… un gros gros réseau local :rofl:

1 « J'aime »

Pour n’avoir que l’adresse IP du HA autorisée via le tunnel, si je ne me trompe pas.

Comme cela, le reste de mon trafic ne passera pas via ma connexion à domicile.

Erreur ?

1 « J'aime »

Ha ok. Donc 192.268.1.55/32 c’est uniquement pour l’IP 55.
Bon a savoir

1 « J'aime »

Tu as tout bon :+1: , seul l’accès à ton HA passera par le vpn wireguard

@+

Ça semble être ça.
J’ai l’impression qu’il est possible de mettre plusieurs IP et de mixer aussi avec le masque (voir message de krull56)

Yes , je te conseille d’aller voir la doc wireguard qui est très bien faite

WireGuard: fast, modern, secure VPN tunnel

Le premier message devient un sacré bazar.

Si j’ai bien compris, un petit peu, le fonctionnement de l’adressage réseau.

Adresse codée en 32 bits.

xxx.xxx.xxx.xxx
8 bits . 8 bits . 8 bits . 8 bits = 32 bits

Si on met par exemple 192.168.1.100/32
Toute l’adresse est définie , donc bloquée. Un seul hote possible 192.168.1.100

Si on met par exemple 192.168.1.100/24
L’adresse est définie sur les trois premiers chiffres. Hotes possibles 192.168.1.1 jusqu’à 192.168.1.254

Info: Calculateur de Masque IPv4 et IPv6

1 « J'aime »

Ce qui m’avait induit en erreur c’était les xxx des 2 dernier octets.
Implicitement il faisait comprendre que c’était une seul IP et pas l’équivalent de /16.

Bonjour,

Comme @Oles67, j’utilise pour mon accès à Home Assistant hors de mon réseau local WireGuard.
C’est à dire que j’ai installé WireGuard en version serveur sur une machine chez moi.
J’utilise ce tunneling pour accéder à Home Assistant, mais aussi pour d’autres services comme un accès à mon NAS (OpenMediaVault) ou encore à mon serveur Proxmox.
La méthode que j’ai utilisée est à mon sens à la portée de tout qui veut prendre la peine de lire et expérimenter les techniques informatiques simples sans être pour autant dans le très vaste métier de l’informatique.
Je ne suis pas du tout dans le métier de l’informatique et tout ce que je connais en informatique, je l’ai acquis en piochant dans les forum,tuto et autres vidéo sur la toile, avec toutes les imperfections que cela peut induire.
N’hésitez donc pas à me reprendre, si j’écris, ici, des erreurs ou inexactitudes.

Step 1 :
J’ai installé WireGuard sur mon serveur Proxmox (qui tourne sur un mini PC) dans un container LXC. Cette étape est relativement simple grâce au site Proxmox Helper Scripts.
Déployez la rubrique « Server - Networking » et ouvrez le lien « WireGuard LXC »

image2

Vous avez là, la ligne de commande à taper dans la console de votre serveur Proxmox pour installer un container LXC WireGuard serveur.

Si vous utiliser la méthode par défaut, il n’y a pas grand-chose à faire.
Votre container est créé. Récupérer l’IP du serveur WireGuard

Si vous voulez un accès SSH à votre serveur ou être plus pointu dans vos paramètres, passez plutôt par l’installation personnalisée.

Step2 (pas obligatoire si vous laisser les paramètres par défaut)

Toujours grâce au site Proxmox Helper Scripts et à la deuxième ligne de commande proposée, paramétrez WireGuard en éditant le fichier /etc/pivpn/wireguard/setupVars.conf.
C’est là par exemple, que vous pouvez renseigner votre IP publique (ou un nom de domaine ? Je n’ai pas essayé), des serveurs DNS, que vous pouvez modifier le port d’écoute (par défaut est 51820), etc…

Step3
Il faut maintenant installer sur votre smartphone ou sur votre portable, un WireGuard client.
Sur android, installer et lancer l’application WireGuard.

Dans l’interface, dans le coin inférieur droit, appuyez sur « + »

Arrêtez-vous là sur votre smartphone et revenez dans la console du container WireGuard dans Proxmox et taper la troisième ligne de commande proposée dans Proxmox Helper Scripts. Cette commande (pivpn add) vous permet d’ajouter des « tunnels » à votre serveur WireGuard.
Entrez un « nom » pour votre tunnel. Le tunnel est configuré.

Lisez bien le message que WireGuard délivre. Il vous donne le nom du fichier de configuration pour votre client et où il l’a stocké.
Ce fichier est à importer dans WireGuard sur la machine client. Par exemple pour un portable Windows. Mais avec l’application Android, il y a plus simple.
Tapez maintenant la commande pivpn -qr
WireGuard vous renvoie la liste des client potentiel indexée.
Entrez le n° d’index ou le nom que vous avez choisi ici plus haut.
WireGuard vous affiche un joli QR Code.
Reprenez votre smartphone et choisissez l’option « Importer depuis un QR code. Scanner le QR code généré.

Step 4

Dans votre Box, ouvrez le port 51820 pour l’adresse IP de votre serveur WireGuard.

Vous voilà avec un tunnel sécurisé entre votre machine client et votre serveur WireGuard à la maison.
A partir de là, c’est comme si vous étiez connecté dans votre LAN. Comme à la maison quoi !
Votre client (smartphone ou pc ou tablette ou …) accédera à votre Home Assistant en http://IPHAlocale:8123 que vous soyez chez vous ou depuis l’extérieur.

N’hésitez pas à explorer les différents arguments de la commande pivpn. Cette commande est très utile pour la gestion des tunnels sur votre serveur.

Mise en garde !
Vous aurez besoin d’ouvrir le port 51820 (ou celui que vous avez renseigné dans votre fichier setupVars.conf ici plus haut). Mais c’est le seul à ouvrir.
Si quelqu’un a accès à votre smartphone non verrouillé / sécurisé, il a accès à tout vos appareils de votre réseau LAN. Il est possible de limiter l’accès uniquement à certaines IPs. Mais il aura quand même accès à ces IPs.

Si vous en voulez plus, il y a une foule de tuto, site, … qui traite de WireGuard.
@+ Guy

1 « J'aime »