Compilation, Installation et Configuration de mod_cband
Un module à connaître pour apache2.
Ce module pour apache2 (uniquement) vous permettra d'établir des restrictions de bande passante, de mettre en place des quotas sur le trafic par un utilisateur ou, de limiter la vitesse de téléchargement pour un utilisateur, session, ou de restreindre le nombre de téléchargements simultanés par ip par exemple.
Téléchargement :
Vous trouverez ce module à cette adresse : http://codee.pl/cband.html
cd /opt/SOURCES wget http://cband.linux.pl/download/mod-cband-0.9.7.5.tgz
Compilation :
tar xvzf mod-cband-0.9.7.5.tgz cd mod-cband-0.9.7.5
Vous avez la possibilité d'utiliser la commande ./configure --help pour connaître les options de compilation disponible afin d'adapter le module a votre installation d'apache2
./configure --with-apxs=/opt/httpd/bin/apxs make make install
Si vous rencontrez des erreurs au make et au make install il est possible qu'il vous manque des paquets devel : exemple : apr-dev
Maintenant n'oubliez pas de rajouter ceci dans votre httpd.conf ou apache2.conf selon votre installation d'apache :
LoadModule cband_module modules/mod_cband.so et CBandScoreFlushPeriod 1 CBandRandomPulse On
Il paraitrait que ces deux dernières options sont importante pour les performances du module.
- CBandScoreFlushPeriod inscrit à X nombre de requêtes le total de la consommation dans le tableau.
- CBandRandomPulse améliore le traitement de la limitation de téléchargement ce qui entraîne une économie du cpu.
Relancez votre apache et vérifiez que le module cband est bien chargé avec la commande suivante :
apachectl -t -D DUMP_MODULES
Pour aller plus loin dans la configuration voici l'url de la documentation officielle : http://codee.pl/cband_documentation.html
Notes :
Légende :
Le temps :
- S = Seconde
- M = Minutes
- H = Heure
- D = Jour
- W = Semaine
Par défaut : S
Vitesse bande passante :
- kbps = 1024 bits est égal à 1Kbp par seconde.
- Mbps = 1024*1024 bits est égal à 1000Kbp soit 1Mbp par seconde.
- Gbps = 1024*1024*1024 bits est égal à 1000Mbp soit 1Gbp par seconde.
Par défaut : kbps
Limitation quotas :
- K = 1000 bytes
- Ki = 1024 bytes est égal à 1Kb.
- Mi = 1024*1024 bytes est égal à 1000Kb soit 1Mb.
- Gi = 1024*1024*1024 bytes est égal à 1000Mb soit 1Gb.
Par défaut : K
Configuration dans vos Virtualhosts :
Ces exemples sont à utiliser dans la configuration de vos vhosts.
Pour obtenir une page d'information sur le status et le fonctionnement de cband mettez ceci dans vos vhosts :
<Location /cband-status> SetHandler cband-status </Location> <Location /cband-status-me> SetHandler cband-status-me </Location>
Exemple 1 :
CBandSpeed 4096 20 30 CBandRemoteSpeed 20kb/s 4 4
Traduction :
- CBandSpeed 4096 20 30 définie une limitation de la bande passante à 4 Mbps, 20 requêtes maximum par secondes et 30 connexions simultanées à ce site pour tout le monde.
- CBandRemoteSpeed 20kb/s 4 4 fait la même chose que CBandSpeed mais par ip.
Exemple 2 :
CBandLimit 400M CBandPeriod 2W CBandScoreboard /var/www/cband/monitoring-cband
Traduction :
- Si le quota est dépassé pas de restriction mises en place, une page d'erreur s'affichera.
Exemple 3 :
CBandLimit 200M CBandExceededURL http://www.system-linux.org/info-quota.php CBandScoreboard /var/www/cband/monitoring-cband CBandPeriod 4W
- Redirection automatique vers la page info-quota.php du site http://www.system-linux.org/ si le quota de bande passante est atteint.
Bonne découverte à vous et n'hésitez pas à nous faire vos remontées d'expériences