Limitation de données internet (quota) sous PFSENSE



  • Contexte : milieu pro, installé depuis 6 mois pour le partage de connexion

    Besoin :  J'aimerais faire un truc sur mon serveur PFSENSE, c'est a dire définir les données internet (Quota ) pour un utilisateur une fois les données défini atteint sa connexion ne passe plus. J'ai chercher mais pas eu grande réponse à ce sujet.

    Schéma :
    WAN :
    un modem,SagemCom F@st 1704N / 2704N, en mode routeur,une adresse publique,aucun loadbalancing/failover, adresse ip fixe: 192.168.2.20

    **DHCP:**192.168.2.21-192.168.2.100

    LAN : 1 Lan ,aucun VLAN, IP fixe: 10.10.10.20
    DHCP: 10.10.10.100-10.10.10.200

    DMZ : Aucun

    WIFI : Assurer par un routeur Linksys avec le DHCP désactivé, avec pour adresse fixe 10.10.10.21

    Autres interfaces: Aucune

    Règles NAT: Aucune
    Règles Firewall: Packages ajoutés : Squid,

    Proxy interface : LAN

    Allow users on interface : Cocher

    Transparent proxy : Cocher

    Enable logging : Cocher

    Log rotate : 360

    Proxy port : 3128

    Visible hostname : moloto

    Language : French

    Suppress Squid Version : Cocher

    –----------------------------------------------------
    Proxy server : Access control

    Allowed subnet: 10.10.10.0/24

    Autres fonctions assignées au pfSense : Mon portail captif emet sur mon LAN eth0

    Question : Poser dans besoin

    Si j'ai pas été précis sur un certain point merci de faire part pour que je vous donnerai plus de détail. Merci



  • @onegame:

    Besoin :  J'aimerais faire un truc sur mon serveur PFSENSE, c'est a dire définir les données internet pour un utilisateur une fois les données défini atteint sa connexion ne passe plus. J'ai chercher mais pas eu grande réponse à ce sujet.

    J'avoue ne pas comprendre exactement ce que "définir des données" signifie.
    Probablement à cause d'une différence de culture ou de langue.

    Veux-tu dire par là "définir un quota" c'est à dire un volume de données autorisé à la suite duquel la connexion se coupe pour un utilisateur donné ?

    Si telle est ta question, en dehors de Radius, je ne vois pas bien comment obtenir ce résultat.

    Autres fonctions assignées au pfSense : Mon portail captif emet sur mon LAN eth0

    non.
    Comme je n'ai déjà écrit dans un autre post, le portail, ainsi que la plupart des serveurs, n'émet rien. Il écoute sur un port et c'est le client qui se connecte.

    "émettre" aurait du sens dans le cas d'unicast, multicast, broadcast, c'est à dire de la diffusion.



  • Début : utilisation du formulaire = bravo ! Mais vous pourriez aussi faire un lien sur vos autres fils : votre contexte est identique et les infos aussi !
    NB : il serait utile que vous indiquiez votre type de ligne Internet : ADSL je suppose.

    Ici, votre besoin, vos recherches, vos pistes sont très insuffisants (et c'est normal).
    En fait vous pressentez une chose : la sur-utilisation de votre ligne Internet par la navigation.
    Mais il vous manque l'analyse et l'expertise nécessaire.

    La bonne démarche :

    • d'abord, connaitre le trafic, son importance, les protocoles
    • si http/https sont prédominants, il faut mettre en place un proxy (dédié à partir d'une certaine taille et d'un certain volume)
    • connaitre l'utilisation d'http/https : qui ? quoi ?
    • blacklister les sites inutiles : en milieu pro, le porno, les sites de radio, …

    Pour connaitre le trafic sortant, le package ntop est un must.
    L'examen régulier de l'utilisation de la bande passante, via les graphes rrd, est nécessaire.

    On peut ensuite agir

    • sur une limitation des protocoles http/https au niveau de pfsense, afin que le reste ait encore de la bande passante dispo (ne soit pas écrasé)
    • sur une limitation d'utilisation par utilisateur/ip au niveau du proxy, cherchez "squid quota".
      Les 2 solutions peuvent et doivent s'ajouter.

    Il est possible d'envisager une ligne dédiée à la navigation !

    Merci de préciser

    • type de ligne Internet, débit
    • nombre d'users internes
    • présence d'AD

    La solution demandera du temps (d'analyse, de mise en place itérative).

    Voyez les dégâts de la réponse rapide : on raconte n'importe quoi ...



  • @jdh:

    Voyez les dégâts de la réponse rapide : on raconte n'importe quoi …

    C'est vrai, surtout quand on est dans l'opposition et le conflit permanent  ;)

    Je ne sais pas comment tu arrives à déduire de la manière dont est formulée la question que le problème est la bande passante et que la solution passe uniquement par HTTP.
    Certainement des talents que je ne possède pas.

    • sur une limitation d'utilisation par utilisateur/ip au niveau du proxy, cherchez "squid quota".

    Effectivement, la piste du proxy est intéressante, si on fait la supposition que seul HTTP est dans le périmètre, mais, pour le moment du moins, ça ne marche pas  8)
    Comme tu le dis, il suffit de faire la recherche pour noter, sur le site de Squid, que la fonctionnalité est, depuis pas mal de temps d'ailleurs, toujours en développement.

    La raison pour laquelle je "raconte n'importe quoi" c'est qu'il n'y a guère que Radius qui aujourd'hui, en terme de standard (RFC) permet de mettre en œuvre des solutions d'accounting par utilisateur. (basé sur radiusnasip)
    En encore cela implique que les services envoient bien au serveur Radius les infos de consommation de ressource, ce qui n'est pas aussi répandu que ça.

    Plus concrètement, un portail captif va permettre de limiter la bande passante "par utilisateur" (tous protocoles confondus), mais pas en terme de quota, pour autant que je sache, avec la version déployée avec pfSense.

    Cette fonctionnalité est cependant disponible au niveau du serveur Radius, y compris celui proposé, en tant que package, par pfSense.

    Pour connaitre le trafic sortant, le package ntop est un must.

    Ce n'est pas risqué, du fait que c'est un package, donc non maintenu etc… etc...  ;)
    D'autant qu'il y a une interface "monitoring" intégrée (et donc maintenue)




  • Comme d'hab, vous essayez toujours de vous justifier …

    La première des choses à faire, face à un débutant qui n'arrive pas à exprimer son besoin, c'est de le faire réfléchir et de lui apporter de la méthode.
    Les mots utilisés sont : utilisateur, 'données', 'données atteint(es)' -> connexion ne passe plus.
    Donc, plus ou moins, il y a sur-utilisation et il faut regarder une problématique de quota.
    Donc, il faut expliquer qu'il faut D'ABORD mesurer.
    Rien de ce que vous faites !

    Concernant Radius,
    Vous oubliez de préciser que, nécessairement, il faudra d'abord authentifier avec Radius.
    Le moins que l'on puisse dire, c'est qu'avec Squid, on ne pense pas DE BASE à Radius ...

    Alors que si on cherche 'Squid quota per user' (proposé), on peut arriver à un document de TLDP : http://tldp.org/HOWTO/text/Bandwidth-Limiting-HOWTO.
    Je pense qu'un tel mode d'emploi écrit en Novembre 2001 ne concerne pas une méthode 'encore en dév' !

    Une telle mise en oeuvre ne pourra se faire qu'avec un proxy dédié, ce qu'il faut dire ...

    Bref, ...



  • @jdh:

    Merci de préciser

    • type de ligne Internet, débit
    • nombre d'users internes
    • présence d'AD

    Mon Type de Connexion: ADSL et un débit de 3 Méga
    Nombres d'utilisateurs: 20
    C'est moi l'administrateur

    Ce que j'essaie de faire c'est  de définir un quota pour chaque utilisateur



  • @onegame:

    Ce que j'essaie de faire c'est  de définir un quota pour chaque utilisateur

    En mode transparent (si je me réfère à ton autre post), tu as zéro chances, au niveau du proxy, de définir un quelconque mécanisme associé à un utilisateur, puisque c'est justement en mode transparent.

    Par ailleurs, se limiter au proxy revient à dire (ce qui n'est pas forcément stupide) : "il n'y a que le flux HTTP qui est important, le reste est marginal, travaillons sur ce protocole uniquement".

    Je n'ai pas de solution en terme de quota sauf à aller vers de l'accounting Radius mais ce n'est, à priori, pas une réponse intelligente.

    Le lien que jdh propose ne gère pas de quota non plus (il n'y a rien pour faire ça nativement à ce jour au sens "quota" qui est d'ailleurs ce que tu recherches) mais met en œuvre une sorte que QOS basée sur des pools pour limiter la bande passante consommée par certains type de download. Ce qui peut être une solution à un problème que tu ne décris pas  ;)



  • @chris4916:

    @onegame:

    Le lien que jdh propose ne gère pas de quota non plus (il n'y a rien pour faire ça nativement à ce jour au sens "quota" qui est d'ailleurs ce que tu recherches) mais met en œuvre une sorte que QOS basée sur des pools pour limiter la bande passante consommée par certains type de download. Ce qui peut être une solution à un problème que tu ne décris pas  ;)

    J'allais en venir sur le QOS avec PFSENSE dans un autre post mais si je pouvais  avoir des informations sur le principes du QoS etc etc.
    j'en au esseyer de faire un jour mais au finish tous mon traffic était bloqué. L'accès a mon interface Web GUI impossible.
    J’étais obliger de reprendre mon système et j'ai plus esseyer l'aventure du Traffic Shapping.



  • Si cela n'est pas trop demander savoir les avantages et inconvenients d'un proxy en mode transparents et en mode explicite .

    merci



  • @onegame:

    Si cela n'est pas trop demander savoir les avantages et inconvenients d'un proxy en mode transparents et en mode explicite .

    En 2011, pour une autre plate-forme, j'avais écrit ça (en anglais) mais c'est valide dans tous les cas.

    Au delà de ça, la vraie difficulté, c'est que tu démarres un sujet en disant "je veux mettre en place des quotas" (pourquoi pas sauf que c'est compliqué) , ce qui en soit est une solution à un problème que tu ne décris pas.

    Si le problème est la bande passante, la bonne solution n'est probablement pas le quota.
    QOS au niveau du proxy peut apporter des solutions mais pas de miracle non plus.

    Il sera probablement plus efficace de d'abord limiter les flux en mettant en place des ACL (par exemple des blacklists type Squidguard)



  • Il sera probablement plus efficace …

    Enfin !!

    Oui, avant de penser à une solution (quota), il est nécessaire d'analyser la situation !

    Comme je l'ai écrit, il faut D'ABORD :

    • analyser l'utilisation de la bande passante : ntop est LE package à ajouter sur pfSense, et après quelques jours, devrait se dessiner l'utilisation de la bande passante
    • si HTTP/HTTPS (la navigation) est majoritaire, il faut analyser ce flux : savoir qui fait quoi; d'où mise en place d'un proxy et analyse des logs

    Ensuite, et seulement ensuite, il conviendra de choisir une méthode

    • blacklist de sites : radio, …
    • méthode QOS (basé sur Squid et les Pool)
    • méthode Quota

    Ne négligez pas la force de l'autorité : 'tu arrêtes d'aller sur tel et tel site au boulot' avec l'index levé et l'oeil noir, n'est pas si mal ...

    Pas la peine de penser avant quelques jours (1 ou 2 semaine) : vous ne savez pas quelle est la situation !


Log in to reply