Reverse proxy multi-ports



  • Contexte : Bonjour à toutes et à tous !
    Je suis un petit nouveau sur pfSense, dont je me sers pour une petite infra perso (ma toute première entièrement à moi ^^).
    Je ne suis pas un grand expert réseau, et j'apprends comme je peux au fil de mes expériences, donc par avance toutes mes excuses pour mes éventuelles approximations.

    Besoin : Ma demande est simple, mais malgré mes recherches je n'ai rien trouvé qui me corresponde.
    Je souhaiterai mettre en place une sorte de reverse proxy qui ne se contenterait pas d'agir sur les requêtes HTTP et HTTPS. J'ai plusieurs serveurs derrière le pfSense, certains partageant les mêmes protocoles (FTP, RDP, port 8080…).

    Mon but ultime serait de faire du NAT vers chacun de ces serveurs sans avoir à changer le port d'écoute :
    Par exemple :
    ftp://serveur1.mondomaine.com –-> 192.168.1.1:21
    ftp://serveur2.mondomaine.com ---> 192.168.1.2:21

    Et ainsi de suite pour tous les protocoles de mon choix…

    Schéma :

    WAN (modem/routeur/box) : 1 IP publique

    LAN : 4 machines locales

    Règles NAT : forward (actuellement le NAT se fait en fonctione du port, c'est ce que j'aimerais changer ! ^^)

    Règles Firewall : Régles créées automatiquement suite au NAT.

    Packages ajoutés : Squid (techno très peu maîtrisée ! Ma seule expérience en reverse proxy est Apache).

    Autres fonctions assignées au pfSense : aucune.

    Question : Ma question est toute simple : est-ce possible ? Et si oui, comment ?
    Je ne sais pas si Squid permet de le faire…

    Recherches : J'ai écumé pas mal de sites avant de venir poser ma question directement ici, sans rien trouvé de concluant ou de compatible avec pfSense…

    Logs et tests : Quelques malheureux tests effectués sur Squid, mais je ne maîtrise pas tellement toutes les options et je m'y perds un peu…

    Merci par avance de vos réponses :)


    MESSAGE ORIGINAL :

    Bonjour à toutes et à tous !

    Je suis un petit nouveau sur pfSense, dont je me sers pour une petite infra perso (ma toute première entièrement à moi ^^).
    Je ne suis pas un grand expert réseau, et j'apprends comme je peux au fil de mes expériences, donc par avance toutes mes excuses pour mes éventuelles approximations.

    Ma demande est simple, mais malgré mes recherches je n'ai rien trouvé qui me corresponde.
    Je souhaiterai mettre en place une sorte de reverse proxy qui ne se contenterait pas d'agir sur les requêtes HTTP et HTTPS. J'ai plusieurs serveurs derrière le pfSense, certains partageant les mêmes protocoles (FTP, RDP, port 8080…).

    Mon but ultime serait de faire du NAT vers chacun de ces serveurs sans avoir à changer le port d'écoute :
    Par exemple :
    ftp://serveur1.mondomaine.com –-> 192.168.1.1:21
    ftp://serveur2.mondomaine.com ---> 192.168.1.2:21

    Et ainsi de suite pour tous les protocoles de mon choix…

    Je sais que le package squid permet quelque chose comme ça, mais je n'ai pas encore trouvé le moyen de le configurer comme je le souhaite (si c'est seulement possible, bien entendu).

    Merci par avance de vos réponses :)



  • Salut Salut

    Avant toutes choses, avez vous lu ce poste ? ==> https://forum.pfsense.org/index.php?topic=79600.0

    Pouvez vous vous conformer à ce poste si avant s'il vous plait.

    Cordialement.



  • Toutes mes confuses !
    J'ai édité mon message :)

    A bientôt



  • Bonjour,

    Dans : system - packages manager vous trouverez 2 packages permettant de faire du reverse proxy

    Je ne les aient jamais installer ni tester

    Cordialement



  • Bonjour,

    Merci de votre réponse.
    Oui, je pense que vous voulez parler de Squid. Comme dit plus haut, j'ai déjà un peu essayer de jouer avec, mes sans résultat. Je ne suis pas sûr que cela réponde à mes besoins, car Squid ne semble "écouter" que sur les ports 80 et 443.



  • Non, je parle de ''packages'' à part entière disponibles dans la liste des packages

    EDIT : dont celui la : http://www.modsecurity.org/



  • Squid est un proxy pour les protocoles HTTP, HTTPS et FTP.
    Il peut être reverse proxy pour les protocoles HTTP et HTTPS (moins aisément).
    En aucun cas, il ne sera reverse proxy pour FTP et d'autres protocoles !

    Vous méconnaissez le fonctionnement des protocoles

    • un accès à un serveur par son nom dns donne lieu à un échange d'ip à ip : le nom ne sert qu'à traduire l'adresse destination
    • pour http, la requête intègre, à l'intérieur du paquet, le nom dns demandé

    De facto, les reverse proxy sont rares.



  • Bonjour,

    Merci pour vos retours. Modsecurity propose plus ou moins la même chose que Squid, cela ne me convient donc pas.
    Je me doutais effectivement que cela ne serait pas possible suite à mes recherches !

    J'espérais qu'il existait une solution alternative, car cela serait fort pratique (surtout que j'ai appris à mes dépens que le serveur FTP que j'utilise n'aime pas qu'on lui change son port d'écoute…).

    Merci tout de même !



  • Vous pouvez regarder Vulture : http://www.vultureproject.org/
    J'ignore si cela convient car je ne sais pas ce que vous entendez par : "Une sorte de reverse proxy qui ne se contenterait pas d'agir sur les requêtes HTTP et HTTPS"


Log in to reply