2 serveurs Yunohost, 2 Raspberry, 2 noms de domaine

Bonjour,

Je souhaiterai avec des conseils sur l’installation d’un second Rpi avec un YH dessu, le tout sur une seul et meme ligne.

L’idée est d’avoir un ndd qui pointe sur chacun des Rpi.
Je suis sur une Freebox delta.

Donc :
ndd1 -> Rpi1-
] - Freebox
ndd2 -> Rpi2-

Merci.

Plusieurs possibilités:
Les plus courantes:

  • Utiliser l’app “redirect_ynh” pour que Rpi1 fasse reverse proxy pour Rpi2 (mais si Rpi1 tombe, tout tombe…)
  • Utiliser un VPN avec ip publique pour acheminer une ip supplémentaire [autopub] Alsace Réseau Neutre fait des supers VPN à ip fixe publique pour 4€/mois)[/autopub]

Moins courant mais devrait fonctionner sans dégradation des services:

  • Faire de la redirection de port depuis Rpi1 vers Rpi2 avec iptables
  • Mettre un équipement en frontal (entre la box et les rpi) qui fait load balancer

Sinon, il y aussi ces solutions qui demandent aux utilisateurs finaux de s’adapter:

  • Partager les ports de la box entre les 2 machines (mais du coup il faudra indiquer le port dans l’url web pour un des 2 serveurs… et ça marche pas pour le mail)
  • Faire un service ipv6 only pour l’un des 2 rpi (en imaginant que tu as bien un prefix ipv6 à disposition)
  • Rendre un des rpi dispo que sur le réseau local (avec une ip privée)
  • Créer un tor hidden services sur l’un des 2 Rpi

Et sinon sans répondre au problème:

  • Commander une seconde ligne (ou une ip supplémentaire (en général c’est pas possible)
  • Mettre le Rpi sur une autre ligne ailleurs (wifi du voisin?)
  • Mettre le Rpi dans un datacenter 6€/mois chez ARN
2 Likes

Merci pour ta réponse complète !

J’ai cru lire que l’utilisation d’ipv6 pouvait régler aussi le souci (freebox propose l’ipv6), un avi ?

Arf je viens de te relire, et tu en parles.

Pourrais tu developer la partie ipv6 ?

Bon après avoir cherché, j’ai compris.
L’ipv6 il y en a une par appareil connecté !
C’est cool ca permet d’eviter de passer par la gestion des ports en plus.
Par contre maintenant faut que je regarde pour la secu de mon serveur …

Bonsoir,
Je dois m’être quelque peu embrouillé l’esprit, mais je ne comprend pas comment il faut utiliser l’app redirect (et probalement la conf DNS) pour répondre à ce cas d’utilisation particulier. j’ai essayé plusieurs configurations, mais je n’arrive pas à obtenir une redirection invisible qui me permette d’atteindre à la fois la page admin et le portail. auriez vous un exemple de comment l’utiliser ?
j’ai essayé :
Libellé pour Redirect :
redirect

Choisissez un domaine pour votre redirection:
domain.org

Choisissez un chemin pour votre redirection
/ (pour arriver directement sur mon deuxième serveur)

Emplacement de destination
192.168.X.X (adresse du deuxième serveur)

Type de redirection
proxy invisible

malgrés cette config, je n’ai pas une redirection transparente comme je pourrais m’y attendre. j’ai configuré mon DNS comme une zone à part entiere, peut être faut il en faire une simple redirection transparente, mais dans ce cas, j’ai des doutes sur la partie letEncrypt.

Est-ce que c’est possible de décrire ce qu’il se passe ?

Sur le portail (adresse root nom de domaine2) j’ai un

404 Not Found

nginx

et si je mets nomdedomaine2/yunohost/admin, j’arrive en fait sur nom de domaine1/yunohost/admin

(avec nomdedomaine1 le serveur sur lequel les ports sont redirigés depuis la box, et nomdedomaine2 celui que j’aimerai associer à une deuxième serveur du même reseau)
nomdedomaine1 et nomdedomaine2 sont tout deux configuré de manère identique chez OVH, avec une zone DNS complete chacun.

Si c’est la webadmin et pas une application standart, c’est un peu normal qu’il y ai des soucis. En fait YunoHost fait en sorte que la web admin soit accessible sur chaque domaine installé (et ça prime sur la config des apps, même pour redirect).
En plus la webadmin a besoin de l’API pour fonctionner, qui se trouve sur /yunohost/api/.

Le hic c’est que si tu fais un reverse proxy de la web admin, celle-ci va utiliser le nom de domaine pour trouver l’API…
https://github.com/YunoHost/yunohost-admin/blob/dev/src/js/yunohost/main.js#L181

Et donc forcément tu vas tomber sur l’API du serveur 1, et administrer le serveur 1, même si potentiellement tu as bien configurer ton reverse proxy pour la web admin…

En l’état, je changerais la redirection pour changer le chemin d ela webadmin et de l’api exemple: domain1.tld/yunohost2/admin/ qui redirige vers domain2.tld/yunohost/admin/
De même pour l’api.

Et je changerais sur le serveur 2, la ligne suivante ne mettant /yunohost2/api à la place
https://github.com/YunoHost/yunohost-admin/blob/dev/src/js/yunohost/main.js#L181

C’est du bricolage, et il faudra probablement réappliquer le changement à chaque maj.

Alternativement tu peux, aller sur la webadmin en local directement sur ton serveur 2.

Merci pour cette réponse détaillée.
ça me parait être un peu trop bancal pour du long terme. Je vais essayer de me former un peu plus pour trouver une solution du genre load balancer ou autre pour faire une vraie redirection (probalement avec une troisième machine).

Mettre en place un load balancer juste pour avoir accès à l’interface d’admin me semble étrange. Pour rappel, tout ce que tu fais avec la webadmin tu peux aussi le faire en cli. Et puis il reste possible si tu es à l’extérieur et que tu veux accéder à ta webadmin du serveur 2, d’utiliser un tunnel SSH

ssh admin@server1.tld -D3128

De configurer un proxy SOCKS dans firefox et de demander la webadmin du server2 dans ton navigateur.

Si tu es sur ton réseau local, il y a juste à taper l’ip de la machine.

Après c’est toi qui voit, mais mettre en place un haproxy ne sera pas si simple que ça, à moins bien sûr que tu sois très à l’aise avec haproxy.

si je comprends bien ce que vous dites je pourrais faire :

Serveur 1 (accessible depuis le net normalement, admin compris) gère ndd1 et ndd2

  • app 1
  • app 2
  • redirect app 3
  • redirect app 4

Serveur 2 (gere ndd 2)

  • app 3
  • app 4

je n’aurais juste pas accès au mails et à l’interface admin de serveur 2 depuis l’exterieur (ce qui n’est pas un problème dans mon cas).

quid de la zone DNS, chacun doit avoir une zone DNS propre ou est ce que le ndd2 doit simplement pointer invisiblement sur le ndd1 ?

j’ai tout bon ?

Bonjour,
je suis intéressé par la solution d’avoir une Ip publique via VPN pour pouvoir héberger un deuxième Raspbery Pi et un autre NDD sur la même box internet.

Quelle est la façon de procéder ?
Faut-il installer quelque chose de précis sur le 2ème Raspberry Pi qui bénéficierai de l’adresse Ip publique ?
Faut-il diriger l’adresse IP publique vers la box puis napper vers le pi local ? Ou l’inverse, le Pi Local vers Ip Publique ?

Comment ça se passe pour l’ouverture des ports ? Ils fonctionnent uniquement pour un seul Pi ?

Par avance merci de vos réponses.
Amicalement, Francis

  1. Obtenir un vpn à ip publique en adhérant à une asso de la FFDN (attention toutes ne propose pas de vpn avec le fichier .cube)
  2. Installer l’app yunohost ‘vpnclient’
  3. Charger le .cube dans l’interface de VPNClient
  4. C’est bon le serveur a sa propre ip publique et est joignable sur le net
  5. De façon optionnel si on veux faire du mail, demander au FAI associatifs fournissant le VPN de configurer un reverse DNS

Donc, tu installes l’app sur le raspberry qui héberge les services que tu souhaite mettre en ligne. Le VPN est associé à une IPv4 publique, tu n’as pas besoin de rediriger des ports.

Il faut un VPN de la FFDN (par exemple un vpn ARN).La plupart des fournisseurs de vpn commerciaux ne proposent pas d’ip publique priopre et dédiée au vpn. Note: chez ARN tu peux aussi payer ton VPN en monnaie libre (G1) pour 4DU/mois.

1 Like

Merci pour le tuto qui est très clair !
Car je compte investir dans un 2ème Raspberry Pi, là j’ai un 3B+ je compte prendre un modèle 4 8Go…

Le fait de pouvoir payer le vpn en DU m’enchante littéralement !
Je vais aller voir les infos de ce pas. :slight_smile:

Merci encore.
Amicalement, Francis