Plusieurs serveurs web port 80 derrière pfsense, comment faire la redirection ?
-
Bonjour :), mon réseau est derrière pfsense et j'ai plusieurs serveurs web dédiés à des applications différentes dans mon lan : webmail, IIS (plusieurs), apache.
Je souhaite qu'il conservent tous les port 80 ou 443 pour l'accès wan, comme en local.
J'utilise un nom de domaine dyndns, accessible sans problème depuis l'internet. Mais Nat ne me permet que de rediriger vers une ip pour un port donné, à moins que je me trompe.
Mais je ne vois pas comment faire pour qu'un client wan puisse joindre l'un ou l'autre par une adresse différente :
genre webmail.mondomaine:443, application1.mondomaine.com:80 ,application2.mondomaine.com:80 , etc.je croyais pouvoir le faire avec dnsforwader, mais çà ne fonctionne que dans le lan. ???
je pense que je me trompe au niveau des couches réseau pour faire la redirection dont j'ai besoin, çà ne doit pas être dns qui s'en charge.
Quelqu'un aurait t-il une solution ou des pistes?
Merci d'avance
-
Mais Nat ne me permet que de rediriger vers une ip pour un port donné, à moins que je me trompe.
Votre erreur c'est que nat et pat travaillent respectivement en couche 3 et 4 et que votre problème est ailleurs, dans une couche applicative, celle du protocole http. Sinon c'est juste à un détail près : nat c'est ip-> ip et pat ip+port (ou plage de ports) -> ip+port (ou plage de ports), mais en pratique on à l'habitude de dire nat pour l'ensemble.
Mais je ne vois pas comment faire pour qu'un client wan puisse joindre l'un ou l'autre par une adresse différente :
genre webmail.mondomaine:443, application1.mondomaine.com:80 ,application2.mondomaine.com:80 , etc.Ce n'est pas un problème pour Pfsense. La solution se trouve du coté d'un reverse proxy basé sur Apache. Solution uniquement valable pour les protocoles http et https. Un petit tour sur apache.org et quelques recherches Google vous donnerons les solutions.
Il vous faut examiner le contenu de la requête http pour prendre une décision en vue d'une redirection, nous sommes au delà des couches 2 ou 3 qui sont celles ou Pfsense travaille. Apache en reverse proxy saura faire exactement cela. -
Bonjour et merci ccnet, mais je vous demanderai bien quelques éclaircissement :
Quand vous dîtes :Ce n'est pas un problème pour Pfsense.
vous voulez dire que pfsense ne s'occupe pas de celà ou alors que c'est faisable pour lui ?
et si ce n'est pas possible sous pfsense, alors une machine(virtuelle par ex.) avec apache en reverse proxy ferai alors l'affaire, et donc nat redirige vers cette machine les requetes port 80, puis elle se chargera de distribuer vers les serveurs web de mon lan ?
Merci encore ;)
-
Oui, de mon point de vue ce n'est pas le travail d'un firewall. Et je ne sache pas que l'on puisse configurer Pfsense en reverse proxy. Même si c'était le cas je ne trouve pas cela très sain.
Votre dernier paragraphe est juste. Vous pouvez mettre le serveur Apache dans une vm (mais pas Pfsense qui doit être seul sur une machine dédiée). Et en effet nat 80 et 443 vers le reverse proxy et ensuite Apache va dispatcher vers la bonne machine en fonction de l'url demandée par l'internaute connecté :
http://www.apachetutor.org/admin/reverseproxies
Vous n'aurez pas à modifier les ports d'écoutes sur vos serveurs Web situés en dmz. -
Bon et bien, la marche à suivre est claire pour moi maintenant, au boulot :P
Etant familier avec OpenBsd, je vais donc me créer une machine virtuelle pour faire du reverse proxy avec Apache.
Mais au fait celà ne pose t-il pas de soucis si je veux des adresses type :
http://mondomaine.com/application1
au lieu de :
http://application1.mondomaine.com
???
Merci
-
De mémoire, je crois que ça passe. Il faut regarder dans la doc Apache.
-
aucun soucis ca marchera très bien.
Apache + mod_proxy + mod_rewrite
En option les autres modules fun sur reverse:
- mod_security et mod_evasive pour la sécurisation des applications et la luttre contre les attaques logicielles.
- mod_gz pour la compression http
- mod_ssl pour les flux SSL
- mod_bw pour la limitation de bande passante