Salutations \o/
J'essai de setup un reverse proxy chez moi et j'avoue que là je bloque !
J'ai des services en local (home assistant, OMV, adguard, etc...) et je n'arrive pas à y accéder depuis le web (que ce soit en local sans DNS ou avec mon téléphone sans passer par mon réseau wifi).
Aloooors.. Pour commencé j'ai un nom de domaine chez OVH (ainsi qu'un plan MX pour pouvoir envoyer des mails).
De ce côté là j'ai bien le domaine principale qui pointe vers mon IP publique fixe.
J'ai également créé des sous domaines pour mes services (certains A -> IP publique, d'autres CNAME vers le domaine principal) mais je vais y revenir.
Mon routeur est sous OpenWRT (FriendlyWRT pour être plus précis).
J'ai défini dans Pare-feu - Redirections de ports le transfert du flux HTTPS 443 et HTTP 80 (le temps des tests) vers mon serveur Nginx Proxy Manager (x.x.x.250).
Quand je ping un de mes services, par exemple homeassistant.mondomaine.lol, j'ai bien mon ip publique.
Dans Nginx Proxy Manager j'ai ajouté les proxy hosts nécessaires (tous on des certificats let's enscrypt récent, en lien avec les sous domaines de mon réseau), et donc tous écoutent le port 443 (ports 80:80 et 443:443 ouverts lors de l'installation de NPM avec docker-compose.)
Pour finir, côté réseau local, sur le routeur j'ai également adguard qui, en plus de filtrer les requêtes DNS, fait aussi office de serveur DNS avec des réécritures DNS.
Ils pointent tous vers l'ip du serveur avec Nginx (en .250 donc).
Mes tests :
Pour commencer, mes services fonctionnent tous en local via les adresse IP et leurs ports (http://x.x.x.105:8123 pour home assistant par exemple..)
Ce qui me fait penser que Nginx fonctionne c'est que lorsque les réécritures DNS dans adguard sont actives, j'accède bien aux services en local avec par ex monservice.mondomaine.blabla.
Dès que je désactive les réécritures DNS, la page charge dans le vide pendant 3 min et je finis par avoir un ERR_CONNECTION_TIMED_OUT.
Par contre, si je referme les ports 80 et 443 dans le routeur, ça ne mouline plus, j'ai directement une erreur 404.
Donc je me dis que quand OpenWRT redirige les requêtes vers nginx il se passe un truc... Soit il reçoit pas la demande du routeur, soit il lui répond pas...
Ah et j'ai essayé de rediriger le flux du port 443 vers un service hébergé directement sur mon routeur et il est bien accessible via mon domaine.truc..
J'ai complètement réinstallé la VM où il y a Nginx avec les paramètres par défaut. C'est toujours pareil. (Tous mes services + Nginx sont sur proxmox)
J'ai vérifié un peu partout (proxmox et VM) les ports 443 et 80 des services qui en ont besoin sont bien ouverts.
Les logs de Nginx (access et error des hosts) sont vides à par quelques requêtes provenant d'IP totalement random...
J'ai retourné le truc dans tous les sens je vois pas....
ça fonctionne en local avec adguard, ça ne marche pas dès lors que je lui retire les réécritures, pourtant ça mouline...
Quelqu'un a t il une idée, et a du temps pour m'aider ?
EDIT : J'ai eu un retour d'OVH qui m'indique qu'il n'y a aucun conflit DNS.
Message édité par klemorius le 05-11-2024 à 10:03:09