Bien dimensionner son Pfsense



  • Bonjour à tous,

    Pour cet été je dois remplacer le SonicWall de mon établissement scolaire
    Je n'ai pas de switch niveau 3 donc c'est le routeur qui gère tout le traffic inter vlan.

    J'ai installé et configurer un pFsense sur une VM.
    J'ai fait quelques essais : création de VLan, règles firewall, filtrage web, etc.. et je suis plutôt convaincu :)

    J'aimerais maintenant pouvoir dimensionner ma VM correctement pour répondre à mes besoins :

    150 utilisateurs max
    2 connexions WAN
    5-6 Vlans
    Proxy transparent
    Filtrage Web par groupes d'utilisateurs (lien avec un AD pour un total de 650utilisateurs)
    Portail Captif (pas encore d'actualité mais fonction qui m’intéresse pour un avenir proche)

    Avez vous besoins de plus d'information ?

    Quels caractéristiques "min" dois-je configurer sur ma VM pour avoir un routeur qui tourne bien ?

    Merci
    Yoan



  • Ce qui importe, c'est également (ou surtout) le débit de ton réseau.

    Si ton LAN est constitué de liens 10 Mb/s, il est évident que la charge du FW sera différente d'un réseau avec des liens 1 Gb/s

    A titre d'information, j'ai un client d'une dimension assez similaire (mais une activité réseau assez faible) et ça tourne sans aucun problème (sans proxy et portail captif) sur une plate-forme C2558 (avec des tunnels VPN et IPSec).
    Un N2930 devrait égalemnt faire l'affaire (encore une fois sans la partie proxy).

    Le portail captif ne consomme pas beaucoup.

    Pour le proxy… ça dépend ce que tu fais en terme de filtrage. Si c'est pour du log uniquement, c'est raisonnable.
    Si tu as du filtrage avec Squidguard, c'est une autre histoire et à ce propos, je ne comprends pas comment tu peux avoir à la fois un proxy transparent et du filtrage par groupe AD.

    Indépendamment du débat "faut-il faire ça sur le FW ou pas"  ::) , je suis très intéressé par ta solution (comprendre entre les lignes "ça ne marche pas... comment fais-tu ?  :P)



  • Bonjour,

    Je suis en Giga partout + fibre entre les switchs.
    Je vais mettre un capteur prtg sur la patte LAN actuel du sonicwall afin de "mesurer" le traffic réseaux y circulant précisément.

    et pour le filtrage , je vais donc filtrer via squidgard tout ce qui passe par le port 80 et appliquer différentes règles de filtrage en fonction du groupe AD

    Je repost des que j'ai les infos sur le trafic LAN

    Merci



  • @Info85620:

    et pour le filtrage , je vais donc filtrer via squidgard tout ce qui passe par le port 80 et appliquer différentes règles de filtrage en fonction du groupe AD

    C'est précisément ce qui ne va pas fonctionner  8)

    1 - une grosse partie du trafic est en HTTPS qui ne sera pas pris en compte par ton proxy transparent sauf à activer SSL-Bump
    2 - en mode transparent, pas d'authentification (avec ou sans SSL-Bump).
    3 - pas d’authentification =  pas d'appartenance à un groupe puisque tu ne sais pas qui est l'utilisateur
    4 - pas d'appartenance à un groupe = pas de filtrage par groupe  ;)



  • 150 utilisateurs sans proxy dédié, une folie … Si on y ajoute les contraintes de logs (quasi obligatoire) ...
    Ce schéma ne peut pas fonctionner en effet.



  • Bonjour,

    J'utilise actuellement un SonicWall qui fonctionne en proxy transparent (qui filtre donc que le HTTP et pas le HTTPS on est d'accord) et qui en lien avec l'AD filtre en fonction de l'unité d'organisation.
    Je log sans difficulté toutes les connexions HTTP par utilisateur.

    Dans un autre établissement j'utilise un NETASQ sur le même principe.

    D'après les différentes doc que j'ai pu lire il m'a l'air tout à fait possible de lié le pFsense et mon Active Directory afin de pouvoir récupérer les groupes présents sur l'AD et donc d'obtenir une authentification….

    Merci pour vos réponses :)
    Yoan



  • Je suis très très intéressé à comprendre, techniquement, comment cela fonctionne(rait)

    Pour t'aider à fournir les explications techniques pertinentes me permettant de comprendre comment cela fonctionnerait, voila les quels points que me semblent être des points de blocage à ce que tu décrits :

    • En mode transparent, le browser ne sait pas que la communication se fait au travers d'un proxy
    • il n'est donc pas possible de renvoyer au browser un code HTTP 407 qui déclenche, coté navigateur, l’authentification auprès du proxy.
    • si il n'y a pas d'authentification, tu ne sais pas qui est l'utilisateur, en tous cas au niveau du proxy, et donc tu sais encore moins l'associer à un groupe.

    Du moins pour ce que j'en comprends.

    Note que Squid pense comme moi  ;D

    Plus sérieusement, si tu lis la doc de Squid, il est très explicitement exprimé que proxy en mode transparent = pas d'authentification
    http://wiki.squid-cache.org/SquidFaq/InterceptionProxy#Why_can.27t_I_use_authentication_together_with_interception_proxying.3F

    Mais je reste ouvert à tout complément d'explication.



  • Le proxy et autre éléments sur le firewall tout le monde sait ce que j'en pense.
    Je suis moi aussi très intéressé par la description de la configuration qui permettrait la mise œuvre de ces fonctionnalités avec un proxy transparent.



  • Tout d'abord merci pour vos retours :)

    Donc si je comprend bien je vais devoir passer en proxy déclaré….
    Aucune façon de faire du filtrage transparent avec authentification via Active Directory avec SquidGard Proxy Server ? ni avec un autre "package" ?

    Donc l'option LDAP dans Squid Proxy Server -> Authentication n'est utile que via un proxy déclaré ?

    Merci

    Yoan




  • Après de nouvelles recherches ce lien me fait dire que c'est possible via "Kerberos" :

    http://www.kns7.org/informatique/3/33/Proxy-Squid-+-Squidguard-et-integration-Active-Directory.html



  • Je ne vois rien sur la configuration du navigateur du client. Rien qui indique qu'il s'agit d'un proxy transparent. Et je lis :

    Configuration des méthodes d'authentification

    3 méthodes d'authentifications seront proposées aux clients:

    Kerberos: Authentification de type Single Sign-On, le jeton d'authentification kerberos sera automatiquement transmis.
        NTLM: Authentificiation via LDAP dans les cas où Kerberos ne fonctionne pas.
        Basic: Authentification "basique" avec un pop-up d'authentification.

    Ainsi que

    Définition des ACL
    Pour forcer l'authentification, la première des acl (ci-dessous) doit être placée à la suite dans le fichier de configuration de squid
    acl auth proxy_auth REQUIRED

    Vu ce qu'il faut installer sur le proxy on est assez loin du cadre d'une utilisation sûre de Pfsense. Sous réserve que tout soit disponible dans un environnement BSD
    ( intégration dans AD, samba, Winbind, Kerberos, msktutil, …). Ce qui est décrit dans ce lien est dans un environnement Linux / Ubuntu.



  • pfSense est un distribution firewallµ.

    Il faut bien comprendre que

    • les packages ne font pas partie de pfSense
    • il n'y a aucune garantie de bon fonctionnement et, pire, d'absence de parasitage avec les fonctions (de base) de pfSense
    • les choix de compil ne sont pas exaustifs, et, donc, certaines possibilités ne sont pas incluses. (en particulier prévoir l'absence de librairies spécifiques !)

    Bref, certains, dont je fait partie, recommandent d'éviter les (gros) packages qui peuvent être installés par ailleurs et avec une meilleure efficacité.

    C'est en particulier le cas pour Squid (et ses dérivés) qui gagne a être installé à part (en dédié).



  • @Info85620:

    Donc si je comprend bien je vais devoir passer en proxy déclaré….
    Aucune façon de faire du filtrage transparent avec authentification via Active Directory avec SquidGard Proxy Server ? ni avec un autre "package" ?

    oui tu comprends bien : impossible de dire :
    "il n'y a pas de proxy" (c'est ce que signifie proxy transparent)
    et en même temps :
    "il faut s'authentifier sur le proxy".

    Ces 2 phrases sont antinomiques.

    Donc l'option LDAP dans Squid Proxy Server -> Authentication n'est utile que via un proxy déclaré ?

    exactement  8)



  • @Info85620:

    Après de nouvelles recherches ce lien me fait dire que c'est possible via "Kerberos" :

    Tu mélanges, à mon avis 2 aspects :

    • le fait que le proxy soit transparent ou explicite
    • le fait que l’authentification soit "automatique" et donc transparente pour l'utilisateur (c'est le SSO apporté par Kerberos)

    Dans le cas que tu montres, c'est l'autentificaiton qui est transparente, pas le proxy  8)

    C'est d'ailleurs assez facile à mettre en œuvre, dans l'absolu, si tu as déjà toute la tringlerie autour de Kerberos. Pas sûr que ce soit aussi trivial sur une plate-forme pfSense.



  • Bonjour ,

    En effet je mélangeais un peut tout je pense :)

    Je pense donc partir sur un proxy déclaré qui va me permettre une authentification des mes utilisateurs sur l'active directory
    Je compte acquérir un Switch de niveau 3 afin qu'il puisse gérer le routage (5 VLANS) et ainsi alléger un peu le pFsense.

    Ma question suivante mérite peut être l'ouverture d'un nouveau sujet…

    Mon infra devrait donc donner le schéma en pièce jointe.
    J'aurais donc un lien trunk entre mon switch niveau 2 et 3
    Mais entre le pFsense et le switch niveau 3 puis-je avoir un lien trunk ? ou dois-je avoir un lien par interface(vlan) ?

    En espérant être compréhensible... :)




  • oui la question est claire.

    A ta place je garderai le routage des VLAN au niveau de pfSense car cela t'offrira plus de flexibilité au niveau de la gestion des règles mais si tu tiens à insérer un switch niveau 3, alors oui tu peux avoir un lien trunk au niveau pfSense

    La charge supplémentaire pour pfSense, compte tenu de ce que tu décris, ne va pas être énorme. Et comme le dit le titre du fil, c'est une question de bon dimensionnement.

    Si tu insère ce switch niveau 3, tu vas avoir 2 niveau de règle :

    • les règles d'accès à internet
    • les règles de routage entre les VLAN (et si tu n'as pas de règles de routage entre les VLAN, c'est que tu n'as probablement pas besoin de VLAN  ;) )

    Pour le proxy explicite : n'hésite pas à regarder WPAD. Ce n'est pas compliqué et c'est à la fois efficace et pratique  8)



  • J'ai des règles de routage inter-vlan c'est pour ça que j'avais créé mes VLANs ;)

    Si je met donc un switch de niveau 3 je pourrais gérer au niveau du switch les régles de routage des vlans et au niveau du pfsense les règles LAN<->WAN

    Je pense que les performances seront meilleures vu que transitera, entre le switch niv 3 et le pfsense, uniquement les connexions LAN<->WAN
    Il me reste à voir jusqu'à quel point je peut affiner les règles sur un switch niveau 3 car par exemple si je bloque le routage entre le vlan 10 et 20 je peut très bien avoir un seul poste parmi le vlan 10 qui doit accéder au vlan 20…

    Et je vais me renseigner pour le WPAD , cela parait très intéressant en effet!

    Merci
    Yoan



  • Ajouter le switch L3 est inutile, comme le dis Chris, il vaut mieu gérer les Vlan directement sur pf, surtout si vous avez des règles inter-vlan.

    Voir un des dernier post de Juve : https://forum.pfsense.org/index.php?topic=102546.msg622702#msg622702

    Cdt