Mon serveur YunoHost
Matériel: Ordinateur
Version de YunoHost: 11.2.5 sur les deux mahines
J’ai accès à mon serveur :
Serveur 1: En SSH | Par la webadmin |
Serveur 2: En direct avec un clavier/écran et par la webadmin sur le reseau local seulement
Êtes-vous dans un contexte particulier ou avez-vous effectué des modificiations particulières sur votre instance ? : oui ?
Si oui, expliquer:
Serveur 1: redirections des ports classiques depuis ma box (fritzbox)
Serveur 2: via reverse proxy
Description du problème
Bonjour,
j’ai récemment installé un deuxieme PC YNH (Serveur2) sur mon réseau local, avec un domain distinct. Cependant je n’arrive pas à y accéder depuis internet (ie depuis l’extérieur de mon réseau local)
Mon Serveur1 fonctionne bien depuis une paire d’années et est accessible depuis internet (ports redirigés dans ma box ISP).
En installant Serveur2, j’ai pris du temps pour comprende que ce n’était pas si facile de l’exposer aussi; j’ai bien songé à modifier les ports de chaque appli pour les rendre différents de Serveur1 mais il reste les incontournables 80 et 443
Après de longues heures de recherche j’ai appris qu’un Reverse proxy etait peut etre ma solution. N’étant pas prêt à bidouiller nginx j’ai abandonné un temps.
Puis j’ai vu cette appli dans le catalogue:
https://apps.yunohost.org/app/reverseproxy
Là encore ça m’a pris du temps pour comprendre comment fonctionne un RP et la doc n’est pas vraiment beginner friendly. Naivement je l’ai installée sur le Serveur2, et j’ai fini par comprendre que ça ne sert à rien.
Maintenant installé sur Serveur1 (je l’ai installé deux fois, une fois avec le nom de domaine de serveur2; une fois avec son ip locale, juste parce que je sais pas ce que je fais), j’ai pu enfin accéder à Serveur2 avec le nom de domaine mais toujous en local (avant ça juste l’IP locale fonctionnait pour accéder à l’admin de Serveur2, mais accéder à l’interface utilisateur switchait au nom de domaine et donc ne fonctionnait pas meme en local)
Cependant je ne peux toujours pas accéder à Serveur2 depuis l’extérieur (warning de sécurité, que je ne peux même pas ignorer):
Connexion bloquée : problème de sécurité potentiel
Firefox a détecté une menace potentielle de sécurité et a interrompu le chargement de nomserveur2, car ce site web nécessite une connexion sécurisée.
Que pouvez-vous faire ?
nomserveur2 a recours à une stratégie de sécurité HTTP Strict Transport Security (HSTS), une connexion sécurisée est obligatoire pour y accéder. Vous ne pouvez pas ajouter d’exception pour visiter ce site.
Installer Letsencrypt ne fonctionne pas sur Serveur2 à cause du diagnostic:
DNS: tout OK
Ports: inaccessibles en IPv6 (donc IPv4 ok??)
Web:
Le domaine <nom du Serveur2> est inaccessible en HTTP depuis l'extérieur.
Le système de diagnostique n'a pas réussi à contacter votre serveur. Il se peut qu'une autre machine réponde à la place de votre serveur. Vérifiez que le port 80 est correctement redirigé, que votre configuration Nginx est à jour et qu'un reverse-proxy n'interfère pas.
J’ai essayer de forcer un certicat autosigné sur Serveur2 avec succes, mais ça ne change rien.
A noter:
-le nom de domaine de Serveur2 à été un temps ajouté sur Serveur1 (quand je n’avais qu’une machine), pour une appli qui nécessitait un domaine distinct. J’ai bien sur supprimé cette appli et ce domaine2 de mon Serveur 1.
-Je n’ai jamais réussi à me connecter à Serveur2 via ssh, même sur le réseau local (pourtant sur un port différent de Serveur1). J’ai un message de termux me mettant en garde contre le DNS spoofing, je pense une conséquence du fait que domaine2 etait un jour sur serveur1, ou alors le manque de letsencrypt sur serveur2? j’en sais rien (j’avais retiré serveur2 du fichier known_hosts de termux sans succès - mais c’est secondaire car j’ai accès à serveur2 en direct la plupart du temps)
Est-ce qu’il y a quelque chose que je fais mal? est-ce que Serveur1 devrait gérer les certificats de Serveur2? (et donc remettre domaine2 sur Serveur1 aussi? ça me semble très contre-intuitif)
Est-ce que j’utilise bien l’appli Reverse_proxy? En gros dois-je mettre l’IP ou le nom de domaine dans le champs d’installation
Emplacement de destination (unix:/fichier pour socket)
Et est-ce que la tuile de l’appli sert à quelque chose dans l’interface utilisateur?
Merci