Proxy inversé avec deux serveurs physiques Yuno dans mon LAN

Mon serveur YunoHost

Matériel: Intel NUC
Version de YunoHost: 11.2.14.1 (stable)
J’ai accès à mon serveur : En SSH & Par la webadmin
Êtes-vous dans un contexte particulier ou avez-vous effectué des modificiations particulières sur votre instance ? : non
Si votre requête est liée à une applicatio, précisez son nom et sa version: reverseproxy 0.2~ynh2

Description du problème

J’ai deux serveurs Yunohost sur deux NUC différents. Le premier (1) est accessible sur les ports 80 et 443 sur le domaine domain1.tld. Il doit servir de proxy inversé pour rediriger domain2.tld vers le deuxième NUC (2), configuré avec le domaine domain2.tld. Les DNS de domain2.tld pointent vers les IPv4 et v6 de (1).
J’ai installé Reverse Proxy sur (1) avec une redirection vers l’IPv4 du (2) dans mon LAN.
Mon problème:

  • Quand je me connecte à domain2.tld, j’arrive sur le serveur (1) mais en gardant l’url de domain2.tld
  • Quand je me connecte à domain2.tld/nextcloud, j’arrive bien sur le Nextcloud de (2)
    Je ne pense pas avoir de problème de cache, que je vide sur mon navigateur. Je n’ai encore pas testé en forçant l’IPv’ ou v6, mais je ne comprends pas ce qui se passe.
    Merci pour votre aide

Bonjour,

Ne serait-ce pas lié à une interférence du SSO du reverse proxy comme j’ai rencontré ici?

Merci pour cette piste. Je vais voir où ça me mène, sans trop bidouiller ynh. En fait, mon serveur (2) ne sert qu’en Nextcloud pour l’instant, donc le tout est stable: accès Nextcloud via le proxy et administration via l’IP. Mais je teste pour vérifier que c’est stable et dans le cas où je doive installer d’autres applications sur le (2).
Encore merci.

Pour info, j’ai mis le reverse proxy en accès public pour passer directement au (2)

C’est ce que je dis dans la discussion en lien, ça ne fonctionne pas quand c’est le reverse proxy qui est en accès public .
Sinon voici un autre sujet que je n’avait pas vu lors de mes recherches précédentes. Je n’ai pas testé mais c’est une piste intéressante :

Merci, mais je n’ai pas encore réussi à faire marcher cette solution. Je me suis permis de poser la question dans ce sujet.

J’ai jeté un œil à ta question sur l’autre sujet, tu parles de SSOWAT, est-ce de ce fichier que tu parles?

/etc/nginx/conf.d/ssowat.conf

Si c’est le cas, ce n’est pas ce fichier qu’il faut modifier de ce que je comprends mais plutôt celui qui est au nom de domain2.tld.conf.

Non, je n’ai pas modifié la configuration sso, mais celle du proxy inversé de mon serveur (2). Par contre, j’ai dû me trompé entre:
/etc/nginx/conf.d/domain2.tld.d/reverseproxy.conf
et
/etc/nginx/conf.d/domain2.tld.conf
Je teste, merci

En commentant les lignes sso du 2ème fichier, j’ai bien accès à mon serveur (2) pour les applications, mais pas l’administration. C’est un pas de plus, merci.

As-tu commenté les lignes “include” comme indiqué? Je pense surtout à celle-ci en priorité :
include /etc/nginx/conf.d/yunohost_admin.conf.inc;
Et effectivement c’est bien /etc/nginx/conf.d/domain2.tld.conf qu’il faut modifier.

Je ne l’avais pas fait. Fait, mais je tombe encore sur l’interface admin de mon serveur (1). J’ai commenté:
access_by_lua_file /usr/share/ssowat/access.lua;
include /etc/nginx/conf.d/yunohost_sso.conf.inc;
include /etc/nginx/conf.d/yunohost_admin.conf.inc;
Encore merci

As-tu rechargé la conf de Nginx? Voire redémarrer avec restart au lieu de reload?

yunohost service reload nginx

Et vide ton cache navigateur (ctrl+maj+R sur firefox)
Si ça ne fonctionne pas toujours pas, je ferai un test de mon côté à l’occasion.

Par habitude, j’utilise systemctl restart nginx. Je suis assez nouveau sur Yuno. Il vaut mieux utiliser ta commande?
Sinon, j’ai normalement vidé le cache et testé sur 3 navigateurs

J’ai refait les tests, je me connecte bien sur le serveur (2), mais quand je clique sur Administration, j’ai l’interface du serveur (1)

Non, pour cette commande il n’y a pas d’importance mais il peut y avoir des exceptions donc autant utiliser la syntaxe de yunohost pour éviter des problèmes.

A défaut d’avoir la solution pour l’instant, tu peux modifier ton fichier host sur ton PC pour pointer sur le bonne interface d’administration.

Et sudo nginx -t pour tester avant de faire un reload de nginx

test is successful

OK, c’est noté. Pour l’administration, je passe par l’IP, donc aucun problème pour moi. Mais je n’aime pas trop les configurations bancales car je ne veux pas que quelque chose se casse un jour pour les utilisateurs, que je doive analyser et réparer en urgence :upside_down_face:
Merci à tous, j’ai encore appris des choses su Yuno, je vais fermer le sujet dans 1-2 jours s’il n’y a aucune idée supplémentaire.

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.