Acceder à ces pages web à distance sans adresse IP publique

Bonjour à tous,

J’ai depuis 2 mois une antenne starlink … et du coup, plus d’adresse IP publique.
J’accès à mon Jeedom (jeedom A) via les DNS jeedom, et j’ai en meme temps un tunnel SSH initié par mon jeedom A vers un jeedom B (maison principale), qui lui a une adresse IP publique. c’ets le jeedom A qui lance automatiquement le tunnel.

Ce tunnel SSH marche très bien, j’accède à l’integralité des infos de mon Jeedom A sur mon jeedom B.
PAr ce bien, je peux acceder à l’integralité de mon lan sur la maison A (envoyé par exemple une requete http pour recuperer un snapshot d’une camera de la maison A dans le jeedom B.

via curl, j’accede donc sur le jeedom B à la page web d’un équipement jeedom A, via une adresse de type 127.0.0.1:50220 (c’ets le port qui assure la mapage au niveau du service à la source)

Mon pb, que je n’arrive pas à resoudre pour l’instant c’est d’accéder à partir de mon reseau B (et pas juste mon jeedom B) aux pages web de mon reseau A.

QUelqu’un aurait-il une idée. J’ai essayer des redictions transparentes au niveau virtualhost apache entre une adresse equipementA.mondomaineA.fr vers 127.0.0.1:50220 mais rien n’y fait, je ne suis pas un expert apache/virtualhost, donc je pense que je patoge !

Si quelqu’un a une idée (ou une autre solution) ? … si quelqu’un a compris

Norbert

Tu as donc un LAN coté A et un LAN coté B
Un tunnel ssh de A vers B

Ca fonctionne de A vers B mais pas B vers A c’est ca ?

Tes 2 LAN ont des IP différentes ?
Un route add coté B pour indiquer comment rejoindre A ne suffit pas ?

Bonjour
Alors je suis pas expert du tout (même pas connaisseur moyen = j’espère ne pas dire de bêtises) mais en lisant ton sujet, j’ai deux pistes.

  • installer un VPN sur ton réseau A : soit sur un NAS ou un routeur qui en est capable (comme ceux de Synology). Depuis ton reseau B (ou n’importe où) tu vas te connecter au VPN et accéder a ton réseau A.
  • si t’as un ordi sur ton réseau A qui est toujours en marche il y a cette solution « clef en main » (qui tourne aussi sur linux donc peut-être sur ta box jeedom), mais je l’ai jamais essayé…

Appel à expert / développement d’une solution : si quelqu’un sait récupérer une vielle SmartBox pour garder qu’un linux dessus et installer cette solution de Nord, en mode « tuto pour les apprentis » (comme moi), je suis preneur !

Ps: @ngrataloup : pas d’adresse publique = pas grave car de toute façon accéder a son réseau via ip publique (au cameras, etc) ca veux dire ouvrir les ports extérieur et autoriser l’extérieur à accéder aux caméras, perso je trouve ça moyen…. Il faut mieux tout fermer et accèder au jeedom / NAS / appareils sur le réseau par tunnel.

Hello @ngrataloup,

On avait monté ce tunnel ssh pour un besoin spécifique : Accès à un site local (interface WEB box) de l'exterieur via Jeedom - #2 par Bad

Mais si ton besoin évolue, il faudra probablement passer par un « vrai » tunnel entre tes réseaux et du routage.

Détailles-nous ce dont tu disposes sur les 2 sites et on trouveras ensemble le meilleur équipement pour monter ce tunnel (idéalement au niveau d’un routeur ou d’une box)

N.B. : Si tu as activé IPv6 sur tes 2 boxs, tu peux directement utiliser IPv6 et n’a pas besoin de tunnel :wink:

Bad

Descritif precis de mon infra

Maison A (maison secondaire) - pas d’adresse IP publique

  • 1 antenne starlink en mode pass-through (pas de routage dessus)
  • 1 routeur TPlink flashé avec openWrt connecté au starlink coté WAN . il est aussi DHCP et DNS
  • 1 jeedom (accédé via dns jeedom). Ce Jeedom ouvre des tunnels SSH vers le jeedom de la maison B
       "mqtt"              => '-R 51883:localhost:1883',
       "webcam-piscine"    => '-R 50088:192.168.8.240:88', 
       "webcam-salon"      => '-R 50188:192.168.8.241:88',
       "webcam-allee"      => '-R 50288:192.168.8.242:88', 
       "webcam-appentis"   => '-R 50388:192.168.8.243:88',
       "frigate"           => '-R 55000:192.168.8.244:5000',
       "ssh"   		       => '-R 50022:localhost:22'

Concretement, ca veut dire que sur mon jeedom de la maison B, si je point vers 127.0.0.1:51883, je suis re-aiguillé vers le mqtt du jeedom de la maison A
J’ai aussi mis en place du multiplexage → 1 seule session SSH, les tunnels sont encapsulés dans la meme session

  • 1 frigate (non accessible de l’extérieur pour l’instant, c’est l’objet de ma question)
  • 4 caméras entre autre. je récupère les snapshots via les tunnels (1 par caméra), la recupération du flux RSTP n’ets pas possible car passe par l’UDP
    Aujourd’hui, tout ce qui est dans cette maison est connecté au jeedom de la maison

Maison B (maison principale avec mon jeedom principal)

  • FO avec box Orange et adresse ip publique
  • 1 adguard qui fait DNS et DHCP
  • 1 jeedom ‹ principale ›

Voilà, voilà un petit descriptif. tout fonctionne bien … sauf qu’aujourd’hui, j’aimerai acceder à mon serveur frigate à distance. j’y ai bien accès sur mon Jeedom via

curl 127.0.0.1:55000

Mais en mode texte, ca n’ets pas très utile :sweat_smile:

Norbert

Merci pour ces détails, belle infra !

A tout hasard, tu as de l’IPv6 sur tes 2 box ?
Sur la livebox, ça semble possible : IPv6 chez Orange
Avec Starlink aussi : Quelle type d’adresse IP est fournie par Starlink ?

Ca simplifierait grandement les communications de passer directement en IPv6

Je dirais que oui, https://ip.lafibre.info me donne bien une adresse IPV6 sur chacun des reseaux

Norbert

Ahhhh !

Bah alors selon les paramètres de tes firewalls (debox ou autre) sur ces 2 réseaux, tu dois pouvoir directment accéder à l’IP de ton Pi ou de tes caméras sans passer par un tunnel :slight_smile:

Ah bon ? T sur ?

Rho…

Alors, je confirme pour ma livebox … C’est un jeu d’enfant !

1 - recupérer l’adresse IPV6 de son jeedom

sudo ifconfig <interface reseau> | grep inet6 | grep global

2 - aller sur l’interface de la livebox et paramétrer une règle au niveau du FW pour autoriser le protocole (https pour moi) vers mon jeedom (device-23)

3 - aller sur son gestionnaire de nom de domaine preferé (OVH chez moi) et paramétrerer un nom de domaine qui point vers l’adresse IPV6 trouvée plus haut

et hop, mon jeedom est accessible de l’exterieur :

1 - par rapport à mon sujet, reste plus qu’à voir comment implémenter tout ca sur openWrt
2 - à creuser un peu le sujet IPV6, je ne sais pas si l’adresse données est fixe ou peu etre ammenée à evoluer

A suivre

Merci @bad pour l’astuce

Super news !!!
Je savais (depuis 2010…) que ce protocole d’avenir allait percer même pour le grand public :rofl:

Oui, j’ai vu des trucs par ci-par la :

Il se trouve que @KipK est impliqué dans les 2 premières conversations, je me permets de le taguer ici.

Normalement ton opérateur devrait te proposer plusieurs /64 (plus petit préfixe possible IPv6 donnant accès à 18 446 744 073 709 551 615 adresses IPv6), certains opérateurs vont déléguent un /56 entier (soit 256x /64), mais souvent le 1er est « facilement accessible » du grand public le reste inutilisé…
regarde par ici, ça n’a pas l’air trop mal : Plans d’adressage IPv6 - cisco.goffinet.org

Les prefixes IPv6 qui te sont attribués restent normalement les mêmes tout au long de ton contrat, je n’ai jamais entendu de changement de ce type qui ne soit pas lié à une grosse modification de l’infra opérateur, donc annoncé longtemps au préalable (rien connu de tel en >10 ans).

Bienenue dans le monde magique d’IPv6 :slight_smile:
Bad

Bon, ben j’ai essayé, mais rien à faire pour acceder à mon LAN en IPV6 via le starlink et ma passerelle OpenWRT

J’ai refait un test via mon idée initiale et au miracle, j’ai reussi

Pour résumer (bon, c’est pas hyper simple, mais une fois la logique comprise, c’est duplicable très facilement)

1 - mise en place d’un tunnel VPN, donc mon cas, entre le jeedom source (127.0.0.1), port 55000 et le jeedom cible, tunnel qui pointe vers le serveur 192.168.8.244:5000
→ tout ce qui arrive sur le serveur source sur le port 55000 est automatiquement redirigé vers le serveur cible 192.168.8.244:5000

Paramètre du tunnel SSH : -R 55000:192.168.8.244:5000',
le -R signifie que la connexion est initialisée sur la cible

2 - mise en place d’un virtualhost sur la source qui redirige toute requete http qui arrive avec l’adresse http://frigate.mondomaine.fr vers 127.0.0.1:55000 (le port source du tunnel)

<VirtualHost *:80> #mon autre nom de domaine
     ServerName frigate.mondomaine.fr

     ProxyRequests Off
     ProxyPass / http://127.0.0.1:55000/
     ProxyPassReverse / http://127.0.0.1:55000/
</VirtualHost>

3 - mise en place d’une redirection DNS de manière à ce que frigate.mondomaine.fr pointe vers mon serveur Jeedom source

Et voilà … Lorsque je pointe vers http://frigate.mondomaine.fr
→ le virtualhost me renvoie de manière transparente vers http://127.0.0.1:55000
→ qui me transfere via le tunnel SSH sur mon serveur jeedom de mon second lan
→ qui bascule sur http://192.168.8.244:5000

:partying_face:

Merci pour ce retour d’expérience, c’est intéressant de voir que les standards d’IPv6 ne sont toujours pas bien appréhendés, ni appliqués, selon les opérateurs…

Ravi que tu ais trouvé une solution, même sans IPv6 :wink: