[RESOLU] Portail Captif PfSense authentification sans redirection
-
@ 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 …
-
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.
-
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 lo0Quand 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).
-
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 ? ???
-
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_forwardSachant 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
-
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_BridgesMais 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. -
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