[RESOLU] Portail Captif PfSense authentification sans redirection



  • Bonjour à tous,

    Je dois pour les besoins d'une entreprise mettre en place un portail captif, j'ai choisi la solution PfSense.

    J'ai donc sur mon serveur, deux interfaces une LAN (d'où viendront les clients) et d'où sortiront les clients.

    Les clients peuvent accéder à la page d'authentification, mais après, la redirection vers Internet se bloque apparemment. Dans la configuration de PfSense, je remarque que le routeur qui devrait être normalement utilisé est marqué Off, et celui-ci est bien fonctionnel (test avec un autre pc). Aussi l'interface Wan est en DHCP, la gateway que je reçois devrait donc être fonctionnel.

    Je précise que je n'ai appliqué aucune règle concernant le pare feu ou le NAT.

    Si vous avez une idée, je suis preneur, merci d'avance.

    Cordialement, Vincent



  • Et donc le problème semble lié à la disponibilité du WAN et non pas au fonctionnement du portail captif, c'est bien ça ?
    Il faut en dire un peu plus sur ton design et sur ce que tu as vérifié relativement à cette interface. Ce n'est pas nécessairement uniquement un problème de gateway.



  • Une description plus complète de l'infrastructure est nécessaire.



  • Salut salut

    Encore un fois nous devons tirer les vers du nez pour avoir les informations pertinentes  >:(

    Je vais me faire taper dessus parce que je ne suis pas diplomate, mais merde, relisez la charte établie pour nous aider à vous aider.
    Que les ip soient ou pas celle que vous avec mis en place peu importe.

    Cordialement, mode nain irascible pour la bonne cause.



  • Salut,
    Comme Chris49 si ton authentification fonctionne, c'est qu'à prioris ton portail captif fonctionne.

    Pour la redirection sur internet je pense que tu donne un element de solution dans ton post.
    "Je précise que je n'ai appliqué aucune règle concernant le pare feu ou le NAT."

    Peut être ajouter une rêgle pour autoriser les flux a traverser ton pare feu ?
    Il me semble que si aucune rêgle est établie les flux sont bloqué.



  • @ Tatave

    J'ai jugé que ce n'était pas nécessaire de donner plus d'informations étant donné la nature du problème. Cela dit, je connais très peu le fonctionnement d'un portail captif et particulièrement de celui-ci, je m'en excuse. J'apporte donc les informations supplémentaires :

    Clients (72.20.33.130 - 198) /25  - - - ->  AP Extender Mode : 172.20.33.129  –-------->  172.20.33.199 :: Pf Sense :: DHCP --------> Internet (172.20.X.X / 16)

    Avec comme gateway, DNS et DHCP pour les clients : 172.20.33.199 (PfSense)
    Et comme info pour l'interface Wan, DHCP provenant du réseau sortant : une adresse en 172.20.X.X et une gateway sur le même réseau.

    Je précise que le découpage de réseaux a été réalisé par mes soins afin de ne pas créer de conflits lors du passage d'un réseau à l'autre et aussi d'appliquer des bonnes pratiques..., et le réseau /25 peut être natté, j'en ai eu la confirmation par le test d'un autre portail captif.

    Mes DNS sont bons, ce sont ceux du réseau local WAN, mon DNS Forwarder est activé.

    J'ajoute les règles du firewall :

    Wan :
    _No rules are currently defined for this interface
    All incoming connections on this interface will be blocked until you add pass rules.

    Click the add button to add a new rule._

    Lan :
    _ID Proto Source Port Destination Port Gateway Queue Schedule Description
    add
      pass   * * * LAN Address 80 * *   Anti-Lockout Rule
    move edit
    add
    icon   IPv4 * LAN net * * * * none   Default allow LAN to any rule 
    edit
    delete add
    icon   IPv6 * LAN net * * * * none   Default allow LAN IPv6 to any rule _

    @ chris4916

    Alors peut-être pas à la disponibilité du Wan en lui même car celui fonctionne bien en général (je l'utilise en ce moment pour aller sur le net), mais plus à comment il est perçu par PfSense. La gateway est toujours marqué offline. PfSense n'arriverait pas à l'atteindre ?

    @ Lolight

    Mon authentification semble fonctionner, je n'ai pas de message d'erreur et les test dans l'interface web pour cette authentification sont bons. Tout est bloqué effectivement, mais d'après ce que je lis, uniquement en entrée sur le WAN, par contre effectivement les informations et paquets sortent surement, mais la question est : reviennent-ils avec cette règle …



  • @Endast:

    Clients (72.20.33.130 - 198) /25  - - - ->  AP Extender Mode : 172.20.33.129  –-------->  172.20.33.199 :: Pf Sense :: DHCP --------> Internet (172.20.X.X / 16)

    Je n'y comprends pas grand chose mais j'ai l'impression qu'il y a une grosse collision entre les réseaux interne et externe. Dans ce cas, ça ne peut pas fonctionner  ::)
    qu'est-ce qui te fait choisir ces masques et ces adresses ?



  • Même sentiment et interrogation sur les réseaux choisis.



  • Alors tout d'abord voici un meilleur schéma du réseau  :-[ :

    [img]http://zupimages.net/up/15/17/6dm7.png

    Alors le reséau WAN est celui de l'entreprise, je n'ai donc pas le droit d'y faire des modifs pour le moment. Ensuite le /25 parce qu'à la base, la page d'adresse autorisée pour l'AP était 172.20.33.100 - 199 / 16

    J'ai voulu garder la même plage mais en changeant de masque afin de créer deux réseaux différents et donc au niveau du routeur pas de problème mais aussi, quand le tout est naté en sortie vers l'opérateur, que cela passe "plus facilement", il reconnaît l'adresse comme étant du /16 intégré au réseau.



  • mais tu ne peux juste PAS avoir des segments réseau (en terme d'adresse et de masque) qui se superposent de part et d'autre du firewall.
    ça ne marche pas  :(



  • Alors vous m'inquiétez là…

    Je ne peux pas dans le cas précis de PfSense ou dans le cas des réseaux en général ?

    Aurais-je mal compris mes cours de DUT ?  :o



  • Alors tout d'abord voici un meilleur schéma du réseau

    C'est vite dit. Pas une seule adresse indiquée, on ne sait où est lan, wan, on imagine que serveur server-PT est une machine Pfsense.
    Vous vous moquez vraiment du monde !



  • On va y arriver :



  • L'adressage réseau est impropre et ne répond pas aux spécification de Pfsense. Les réseaux connectés à chaque interface doivent être différents et ne pas se chevauffer bien sûr.



  • @Endast:

    Je ne peux pas dans le cas précis de PfSense ou dans le cas des réseaux en général ?

    De manière simpliste, tu ne peux pas "en général".
    Tu pourrais imaginer, mais ça va être compliqué, vu d'où tu pars en terme de compréhension, avoir une classe A ou B pour le réseau d'entreprise, laquelle est scindée en classes C pour les parties périphériques du réseau. Mais ça nécessite un bonne compréhension des aspects routage, la mise en ouvre, sur les réseaux complexe, d'un protocole genre OSPF.

    Dans ton cas, par exemple, si le réseau de droite recouvre le réseau de gauche (par rapport à pfSense au milieu), il faut que l'interface de droite sache qu'une trame à destination du réseau de gauche doit traverser pfSense alors que l'interface de droite pense que cette adresse de destination est à droite du fait des masques. Tu peux t'en tirer avec du NAT :-) mais quelle usine à gaz !

    Pou faire court : installer dans ton coin un composant qui a un impact sur le fonctionnement du réseau global sans en parler aux responsables du réseau de l'entreprise, ce n'est pas une bonne idée.

    Va donc les voir, explique ton projet et ils te dirons quelle est ta latitude en terme de chagement et quel plan d'adressage adopter pour que ça marche.

    Du coup, ton projet, c'est un portail captif et tu as choisi pfSense parce que ça embarque un portail ou bien tu as vraiment besoin d'un pare-feu ?



  • Ok je crois avoir compris la source du problème en regardant la table de routage, vous aviez raison sur le découpage de réseau, en réalité le /25 n'est pas adapté :

    Internet:
    Destination        Gateway            Flags      Netif Expire
    default            172.20.33.254      UGS        em1
    localhost          link#5            UH          lo0
    172.20.0.0        link#1            U          em0
    172.20.33.128/25  link#2            U          em1
    middlebox          link#2            UHS        lo0
    172.20.38.199      link#1            UHS        lo0

    Quand il cherche la passerelle 172.20.33.254 soit celle vers Internet :

    Il cherche dans sa table de routage et voit un réseau 172.20.33.128/25 et donc il va chercher sur celui ci (! donc sur le LAN !) et non par sur le WAN (172.20.0.0) comme il est censé le faire si on suit l'ordre de cette table, mais bon peut-être qu'il va d'abord chercher les réseaux les plus précis également…. 'fin bref.

    Je pense que la capture suivante confirme :

    Du coup, il faudrait soit que je réduit le masque afin de cibler le réseau et d'arrêter de lui faire croire que le 254 se trouve sur le LAN, soit j'intègre la route directement. Mais bon ça c'est en théorie.

    J'ai aussi mis ça en place car je ne sais pas si d'autres réseaux que le 172.20/16 peuvent être Natés…

    Au pire, je peux tenter un 192.168 et voir ce qu'il en est. Je verrais avec eux également.

    Pour être honnête, j'étais parti sur quelque chose que je connais mieux, qui est Coovachilli, mais le souci c'est qu'il n'est plus vraiment mis à jour et qu'il m'a posé des problèmes de compatibilité sur certains clients (Il n'acceptait les smartphones Androïd par exemple ou encore les OS Linux).



  • @Endast:

    Ok je crois avoir compris la source du problème en regardant la table de routage, vous aviez raison sur le découpage de réseau, en réalité le /25 n'est pas adapté :

    C'est plutot 172.x.x.x qui n'est pas adapté.

    Du coup, il faudrait soit que je réduit le masque afin de cibler le réseau et d'arrêter de lui faire croire que le 254 se trouve sur le LAN, soit j'intègre la route directement. Mais bon ça c'est en théorie.

    réduire le masque ne sert à rien (relis tes cours  :P)

    Au pire, je peux tenter un 192.168 et voir ce qu'il en est. Je verrais avec eux également.

    C'est une bonne idée

    Pour être honnête, j'étais parti sur quelque chose que je connais mieux, qui est Coovachilli, mais le souci c'est qu'il n'est plus vraiment mis à jour et qu'il m'a posé des problèmes de compatibilité sur certains clients (Il n'acceptait les smartphones Androïd par exemple ou encore les OS Linux).

    Est-il bien clair pour toi que le problème pour le moment n'est pas le portail mais le réseau ?



  • Je ne l'ai pas fait jusqu'à maintenant, je tiens à vous remercier du temps que vous m'accordez  :)

    Oui pour mes cours, je vais le faire très vite….

    Pour Coovachilli, non ça ne m'avait pas percuté ....  :o

    Hum.... Je testerai les deux dans ce cas-ci. Mais du coup comment ça se fait que ça marchait à moitié alors ?  ???



  • @Endast:

    Hum…. Je testerai les deux dans ce cas-ci. Mais du coup comment ça se fait que ça marchait à moitié alors ?  ???

    Je n'en sais rien, ne sachant pas ce que tu avais déployé.
    Y avait-il du NAT caché ?



  • Je pense que oui, j'ai appliqué ça dans le fichier /etc/network/interfaces :

    post-up iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
        post-up echo 1 > /proc/sys/net/ipv4/ip_forward

    Sachant que eth0 était l'interface vers Internet.

    Pour revenir à PfSense, je suppose qu'il n'est pas possible de l'utiliser uniquement en tant que portail captif avec deux interfaces qui ont la même plage d'adresses ?

    Je n'ai pas encore le vérifier pour sur, mais le NAT de l'entreprise ne semble naté que le réseau interne soit 172.20.X.X/16 . J'ai essayé avec du 192.168.X.X/24, également avec du 172.16.X.X /16



  • @Endast:

    Je n'ai pas encore le vérifier pour sur, mais le NAT de l'entreprise ne semble naté que le réseau interne soit 172.20.X.X/16 . J'ai essayé avec du 192.168.X.X/24, également avec du 172.16.X.X /16

    je ne comprends pas ce qu'est le NAT de l'entreprise.

    Si tu es autorisé à gérer ton propre segment réseau derrière ce portail captif, pourquoi ne pas définir un masque dans un range qui n'est pas déjà utilisé ailleurs dans l'entreprise et laisser pfSense faire la translation d'adresse ?
    Je ne sais en revanche pas te dire si 192.168.x.x/24 est le bon choix. Seul l'administrateur réseau dans TON entreprise peut te donner la réponse. Une de ses attribution est justement de définir, pour l'ensemble de l'entreprise, quels sont le segments attribués à telle ou telle partie du réseau en s'assurant que tout est routé et qu'il n'y a pas de collisions.



  • "
    post-up iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
        post-up echo 1 > /proc/sys/net/ipv4/ip_forward
    "

    Le fichier d'ou ? tu donne pas assez d'info.
    Pourquoi ne pas modifier directement /etc/sysctl.conf pour l'ip forward ? Ca me semble plus sérieux.
    Pourquoi ne pas aussi directement faire ton masquerade sur iptables plutôt que d'allourdir ton fichier interfaces.

    M'enfin le problème n'es pas la.

    Tu  parle de nat, mais de quel type ? masquerade, SNAT DNAT, NETMAP ? C'est pas très clair.

    Ca serais dommage de mettre en place pfsense et de  ne profiter que du portail captif, mais je suppose que c'est possible moyennant une configuration adaptée. (Jamais testé)



  • Si tu es autorisé à gérer ton propre segment réseau derrière ce portail captif, pourquoi ne pas définir un masque dans un range qui n'est pas déjà utilisé ailleurs dans l'entreprise et laisser pfSense faire la translation d'adresse ?

    Au risque de me faire lyncher…. ce n'est pas ce qu'on pouvait faire avec le /25 ?  ???

    Ce que j'appelle le NAT de l'entreprise, c'est le modem en réalité, le routeur ou les routeurs terminaux qui permet d'aller vers Internet. D'ailleurs de quel type, c'est là encore une bonne question, va falloir que je me renseigne.

    Ces deux lignes ont été installés dans le fichier /etc/network/interfaces dans la mise en place d'un autre type de portail captif : Coovachilli sur une distrib Ubuntu server 12.04.



  • Pour revenir à PfSense, je suppose qu'il n'est pas possible de l'utiliser uniquement en tant que portail captif avec deux interfaces qui ont la même plage d'adresses ?

    Non.
    Mais, même si je n'en suis pas fan absolu :
    https://doc.pfsense.org/index.php/Interface_Bridges

    Mais cela fonctionne t il avec le portail captif ? Sur les versions récentes je ne l'ai pas testé.

    Iptables c'est bien, mais Pfsense n'utilise pas Iptables.

    D'ailleurs de quel type, c'est là encore une bonne question, va falloir que je me renseigne.

    Ce qui est frappant depuis le début de ce sujet c'est le manque de préparation.
    L'absence de réflexion structurée sur les besoins dont découle, ensuite, une solution technique et enfin des conditions et modalités de mise en œuvre.
    A cela s'ajoute une méconnaissance des spécifications de Pfsense.
    Toutes les conditions sont rassemblées pour aller dans le mur. Je n'aimerais pas être à la place de l'entreprise cliente.



  • @Endast:

    Au risque de me faire lyncher…. ce n'est pas ce qu'on pouvait faire avec le /25 ?  ???

    tu ne devrais pas te faire lyncher…. normalement  ;D

    Je pense que tu n'as pas compris à quoi sert le masque .

    Pour reprendre ton exemple:
    172.20.0.0/16 couvre toutes les adresses de 172.20.0.1 à 172.20.255.254 (soit 65534 hosts)
    Si tu créés un sous-réseau qui commence par 172.20.x.x/A  (quelle que soit la valeur de A plus grand que 16, ce réseau sera compris dans intervalle du réseau ci-dessus, donc il y a collision.
    Si A est égal à 16, c'est le même réseau (et donc ça ne marche pas)
    Si A est plus petit que 16, c'est ton nouveau réseau qui englobera le précédant.

    Il te faut donc un réseau en dehors de l'intervalle décrit au dessus.

    Je suis assez surpris d'ailleurs que l'entreprise alloue un masque tel que /16  :o



  • Relis bien t'es cours, je sais pas exactement se que tu as suivis ou suis comme filière mais si tu as pas compris ça tu va droit dans le mur, c'est la base de la base celon moi.

    Ensuite, je rajouterais que ton masque va définir ton nombre d’hôte pas réseau / sous réseau et la classe d'adresse ton nombre d’hôte total.

    Donc avec une classe précise, tu as un nombre d’hôte définis que tu partitionne dans différent sous réseau a l'aide d'un masque.

    Oui ton entreprise gaspille sûrement des adresses, mais ça c'est pas de ton fait / responsabilité.



  • Pour répondre aux interrogations, j'ai fait un DUT Réseaux & Télécommunications, c'est mon stage de 2ème année.

    Ensuite pour répondre au manque de préparation, cela fait maintenant 10 jours que je suis dessus à plein temps et uniquement 3 jours sur PfSense, je dois m'adapter à l'entreprise, le personnel qui s'occupe de ça (réseaux) est très peu nombreux comparé à la taille de l'entreprise (3 contre 90) et le responsable n'est souvent pas là. Je dois faire avec ce que j'ai et oui certes, je manque certainement de connaissances sur le fonctionnement du système mais je préfère vraiment la manière dont je travaille actuellement, car il n'y pas de conséquences graves et j'apprends beaucoup plus vite comme ça que de potasser une doc pendant 10h non stop, même si certainement certains se sont tirés les cheveux par ma faute, et je m'en excuse par ailleurs.

    Pour revenir sur le problème, si j'attribue un réseau quelconque au réseau LAN et qu'ensuite je le NAT sur une IP fixe du côté WAN (évidemment dans la même plage d'adresse que le reste du réseau WAN), cela devrait pouvoir fonctionner non ?



  • @Endast:

    Pour revenir sur le problème, si j'attribue un réseau quelconque au réseau LAN et qu'ensuite je le NAT sur une IP fixe du côté WAN (évidemment dans la même plage d'adresse que le reste du réseau WAN), cela devrait pouvoir fonctionner non ?

    Oui ça peut marcher. Je ne comprends pas vraiment quelle est la nature du réseau coté WAN de pfSense mais fait d'abord valider par l'équipe réseau de l'entreprise ton plan d'adressage. ça prend 10 minutes ;-)



  • Comment explique le réseau WAN… Le réseau WAN dans mon cas est en réalité le réseau interne de l'entreprise, composé de serveurs, de switchs, routeurs etc... C'est là dessus que se connecte n'importe quelle machine cliente de l'entreprise. Alors oui je suis d'accord il porte mal son nom mais je suis cependant obligé de passer par là, je ne peux pas accéder directement au modem/routeur de sortie.



  • Ce point est très clair. Sauf que contrairement à internet, je ne sais pas ce qu'il y a dans ce réseau et donc je ne peut pas t'affirmer que le plan d'adressage que tu choisis est le bon. Encore une fois: confirme avec l'architecte réseau de l'entreprise.



  • Hum désolé je ne comprends pas pourquoi mon edit de tout à l'heure n'est pas passé..

    Je disais donc dans mon ancien post, que j'ai pu confirmé avec l'entreprise que le réseau 192.168.1.0 devrait pouvoir être naté sans soucis, il me reste donc à configurer l'interface Wan, et à ajouter une règle au Nat Outbouding… sauf que je viens de m'apercevoir que ces règles sont déjà en place de manière automatique :

    Si c'est le cas et que je n'ai toujours pas Internet (j'ai réessayé depuis)… J'ai tout vérifié, mes adresses, mes routeurs, mes passerelles (disponibilité), l'accès en lui même...



  • Je crois que tu brûles un peu les étapes pour ce type d'implémentation.
    Avant de vouloir faire des tests directement avec internet, tu devrais t'assurer du fonctionnement de ta plate-forme avec le réseau de l'entreprise, par exemple avec le segment qui est juste connecté à ta patte "WAN".

    "Ne pas avoir accès à internet" est une description tellement vague, de plus ce n'est que le symptôme. Regarde dans les log, pour commencer.
    Il y a également des outils de diag avec pfSense pour t'aider à comprendre ce qui se passe.

    Ensuite, il te faut décrire un peu le type de test que tu fais et le résultat (mais pas sous la forme "ça ne marche pas"  ;D ;D ;D



  • J'ai tendance à me sentir du côté client en disant ça marche pas … mais ça fait du bien par moment  ;D , surtout quand tu trouves pourquoi "ça marche pas".

    Une option cochée par défaut désactive le Nat qui lui même est configuré automatiquement... Je comprends pas trop l'intérêt de désactiver quelque chose qui fait en sorte que ça fonctionne... éventuellement par sécurité ?

    Pour ceux qui liront le topic :

    • Si votre réseau est bon niveau adressage

    • Si vous pouvez accéder à votre portail captif

    • Si vous avez pas accès à Internet ou au réseau wan MAIS que les règles de Nat Outbound automatique sont correctement appliquées

    Je vous conseille grandement d'aller vérifier dans System / Advanced / Firewall|Nat    que l'option "Disable all packet filtering" est décoché, sans quoi il annule le NAT…

    Je remercie toutes les personnes qui ont participé à ce Topic particulièrement chris4916 pour sa disponibilité.

    Me reste maintenant à mettre en place le serveur radius pour l'authentification secure et puis à pouvoir gérer plusieurs points d'accès.

    Merci encore guys, love you  ;)



  • @Endast:

    Me reste maintenant à mettre en place le serveur radius pour l'authentification secure et puis à pouvoir gérer plusieurs points d'accès.

    et à marquer ce sujet comme [RESOLU] une fois que ça fonctionne  :P


Log in to reply