• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login
Netgate Discussion Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login

Conflit entre portail captif et WPAD

Français
3
11
539
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • B
    Baud21
    last edited by Nov 13, 2019, 9:44 AM

    Bonjour,

    Je souhaite mettre en place un portail captif (base active directory), avec filtrage par squidGuard, y compris HTTPS, mais sans inspection de paquet, le tout logué avec nom d'utilisateur. J'utilise pfsense (dernière version).

    Première configuration :
    Portail captif LDAP
    Packages Squid (explicit+transparent) + SquidGuard + Blacklist + ACL
    Firewall pass 53/80/443

    A ce moment là, le portail captif fonctionne, le filtrage HTTP aussi, mais pas le filtrage HTTPS.

    Modifications :
    Filtrage HTTPS par WPAD (fichiers dans www + DHCP override)
    Firewall pass 3128 block 80/443

    A ce moment là, le portail captif n'est plus affiché, mais le filtrage HTTP et HTTPS fonctionne (cependant la page de blocage HTTPS ne s'affiche pas car squid renvoi un flux http)

    Comment concilier les deux ? Merci d'avance

    1 Reply Last reply Reply Quote 0
    • J
      jdh
      last edited by Nov 13, 2019, 10:26 AM

      Je veux, je veux, je veux ...

      Il y a là des problèmes dont vous ne mesurez pas du tout les effets !

      Premier (gros) point :
      Si vous mettez un proxy sur le pfSense, indiqué grâce à wpad, le portail captif n'a strictement aucune utilité : le proxy étant local au pfsense, il ne sera pas concerné !

      Deuxième point :
      Squid explicite et transparent : transparent est une très fausse bonne idée, ne fonctionne qu'avec http, peut fonctionner avec https au mépris des utilisateurs puisque la sécurité https est cassé, et finira par ne même plus fonctionner (hsts)

      Par contre vous avez compris que SquidGuard bloque un accès https sans message d'erreur.

      Albert EINSTEIN : Si vous ne pouvez pas l'exprimer simplement, c'est que vous ne le comprenez pas assez bien. (If you can’t explain it simply, you don’t understand it well enough.)

      1 Reply Last reply Reply Quote 0
      • B
        Baud21
        last edited by Nov 13, 2019, 10:58 AM

        Merci pour la répondre

        Alors si je réduis mes exigences, je "veux" :

        • savoir qui fait quoi
        • bloquer certains sites

        Peut-être que la solution passe par une authentification par le squid au lieu du portail captif ? Mais je sais pas si c'est possible avec WPAD.

        1 Reply Last reply Reply Quote 0
        • J
          jdh
          last edited by Nov 13, 2019, 11:19 AM

          Un proxy est idéal pour une entreprise (LAN).
          On peut y ajouter une authentification LDAP (typiquement sur l'AD de l'entreprise).

          Le portail captif est plutôt destiné à un réseau Wifi et/ou 'invité'.
          (Il est très judicieux d'avoir plusieurs signaux Wifi : wifi interne + wifi guest voire plus ...)

          Il manque donc une information essentielle : le contexte.

          Albert EINSTEIN : Si vous ne pouvez pas l'exprimer simplement, c'est que vous ne le comprenez pas assez bien. (If you can’t explain it simply, you don’t understand it well enough.)

          1 Reply Last reply Reply Quote 0
          • B
            Baud21
            last edited by Nov 13, 2019, 11:32 AM

            Le but est d'offrir la possibilité aux élèves/étudiants de l'école d'accéder à internet depuis leur(s) périphérique(s) par wifi sur un vlan dédié. Comme le périphérique n'appartient pas à l'établissement, je ne peux rien configurer dessus et je ne peux pas leur faire confiance, je ne peux pas leur imposer un certificat x509 par GPO pour faire du MITM.

            La loi nous oblige a conserver les logs, et pour les responsabiliser, j'ai besoin d'avoir une authentification. Tous les comptes existent dans l'AD.

            De plus, comme une partie du public est mineur, j'ai l'obligation d'empêcher par tout les moyens l'accès aux sites pornographiques.

            En soit je n'ai pas besoin d'un portail captif ou d'un proxy mais j'ai besoin d'une authentification et d'un filtrage, peu importe l'implémentation.

            Donc actuellement :

            • soit je sais qui va où, avec le portail captif, mais il suffit d'aller en https pour aller sur les sites pornos.
            • soit je bloque tous les sites pornos quelque soit le protocole, mais mes logs sont anonymes.
            1 Reply Last reply Reply Quote 0
            • J
              jdh
              last edited by Nov 13, 2019, 1:11 PM

              Bon, voila des infos sur le contexte ! (C'est toujours par là qu'il faut commencer.)

              Réfléchissons :

              • Un réseau wifi dédié avec de multiples bornes : logique.
              • un vlan dédié associé à ce réseau, avec les switchs administrés et les bornes multi-ssid : logique
              • le besoin se limite à la navigation et à rien d'autre : logique
              • aucun paramétrage possible sur les matériels des élèves/étudiants : logique, donc WPAD est une piste intéressante
              • le contrôle de la navigation (http et https) NE PEUT ETRE effectuée que par Squid + SquidGuard : ce n'est pas le portail captif, authentifié ou non qui donnera ces informations !
              • Squid doit identifier les utilisateurs, et non un portail captif.

              A mon avis, un proxy dédié (et hors de pfSense) avec Wpad peut faire l'affaire : cette machine, sur le vlan, sera bien évidemment la seule à traverser le firewall (sur 80/tcp et 443/tcp.
              De plus il faudra intégrer l'authentification dans Squid.

              Albert EINSTEIN : Si vous ne pouvez pas l'exprimer simplement, c'est que vous ne le comprenez pas assez bien. (If you can’t explain it simply, you don’t understand it well enough.)

              1 Reply Last reply Reply Quote 0
              • B
                Baud21
                last edited by Nov 14, 2019, 6:47 AM

                Alors voici des news :

                Portail captif désactivé
                Squid mode transparent désactivé
                Squid authentification activée, par LDAP
                WPAD conservé
                Firewall : 3128 pass, 80/443 block

                Résultat :

                • site filtrés en http & https
                • authentification popup Realm & logs OK

                La popup c'est moins sexy que le portail captif mais ça fait le job. D'ailleurs le package Squid propose une authentification par portail captif mais je n'ai pas réussi a le faire fonctionner (pourtant ça parait pas illogique que le squid affiche un portail captif, à creuser).

                Problème, le wpad (par DNS) ne fonctionne pas sur Android (Windows OK, mais testé sur les autres plateforme). On peut saisir manuellement le proxy + port ou saisir l'URL du fichier proxy.pac, mais ce n'est pris en compte que par Chrome.

                D'ailleurs, wpad par DHCP (en ajoutant l'option 252 dans les baux DHCP) ne fonctionne pas, le DHCP Server de PFSense n'envoie pas l'option malgré la configuration.

                En tout cas merci jdh pour votre aide

                1 Reply Last reply Reply Quote 0
                • J
                  jdh
                  last edited by Nov 14, 2019, 10:14 AM

                  WPAD est un protocole assez bien défini : il est dommage que certaines versions d'Android ne l'utilise pas. Mais c'est aussi inconnu de la plupart des applications pour leur mise à jour !

                  Il faut toujours analyser le besoin pour voir ce qu'il y a à faire.
                  Et non faire l'inverse : mettre en place des choses et ... voir que ça ne fonctionne pas !

                  Albert EINSTEIN : Si vous ne pouvez pas l'exprimer simplement, c'est que vous ne le comprenez pas assez bien. (If you can’t explain it simply, you don’t understand it well enough.)

                  1 Reply Last reply Reply Quote 0
                  • C
                    chris4916
                    last edited by Nov 15, 2019, 7:26 PM

                    Je te confirme que le serveur DHCP de pfSense renvoie bien les options que tu lui ajoutes. Quelle syntaxe as-tu utilisé ?
                    Quant au "portail captif de Squid..." ça n'a pas vraiment de sens, au moins techniquement.

                    L'utilité du portail captif, c'est de:

                    • capturer le flux HTTP de l'utilisateur (d'où le nom) pour demander à celui-ci une information qui va permettre de l'identifier, voire de l'authentifier
                    • et à partir de là, lui donner un accès au travers de l'équipement que le portail captif contrôle
                    • Ce mécanisme permet de, par exemple, monétiser l'accès ou d'en limiter la durée ou n'importe quoi d'autre d'ailleurs en fonction de tes besoins.

                    Le plus souvent, cet équipement est un pare-feu 😉

                    L'usage du proxy est assez différent, même si celui-ci peut permettre de limiter l'accès sur la base de volume ou durée de connexion.
                    Ce que Squid permet, c'est de déporter l'authentification du "HTTP 407" que renvoie le proxy vers une page web plutôt que de déclencher le pop-up du browser

                    Jah Olela Wembo: Les mots se muent en maux quand ils indisposent, agressent ou blessent.

                    1 Reply Last reply Reply Quote 0
                    • B
                      Baud21
                      last edited by Nov 19, 2019, 10:27 AM

                      Bonjour,

                      Quand je capture les trames envoyées par le serveur DHCP de PFsense, il n'y a pas de trace de l'option 252.
                      Dans la configuration du DHCP, j'ai simplement ajouté sous la rubrique "Additional BOOTP/DHCP Options" la ligne : 252 / string / "http://wpad.mondomaine/wpad.dat".

                      1 Reply Last reply Reply Quote 0
                      • C
                        chris4916
                        last edited by Nov 19, 2019, 5:53 PM

                        ça m'a l'air plutôt correct.
                        On utilise généralement proxy.pac plutôt que wpad.dat qui est lui utilisé par Microsoft, raison pour laquelle le serveur web qui sert ce fichier utilise également, le plus souvent des alias pour que, quelque soit le nom demandé, le fichier soit bien retourné, mais à ce détail près, ta conf me semble correcte. (il y a même des browser qui cherchent wpad.da)

                        Jah Olela Wembo: Les mots se muent en maux quand ils indisposent, agressent ou blessent.

                        1 Reply Last reply Reply Quote 0
                        5 out of 11
                        • First post
                          5/11
                          Last post
                        Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.