Aus gegebenem Anlass musste ich den Traffic auf einem Apache 2 beschränken. Für die Aktualisierung von ThinClients musste pro Gerät ein 1 GB Image herunter geladen werden. Um nun die Bandbreite des Netzes nicht ins Bodenlose zu reißen musste halt die Bandbreite für HTTP Downloads Limitiert werden. Dies geht beim Apache 2 mit dem Modul cban, dass per apt-get installiert werden kann.
apt-get install libapache2-mod-cband
Anschließend aktivieren wir das Modul
a2enmod cband
Erweitern die httpd.conf aus Performancegründen
/etc/apache2/httpd.conf:CBandScoreFlushPeriod 1 CBandRandomPulse On
Und tragen nun pro VirtualHost die Limitierung ein.
Wichtig ist, dass dieseEinträge nach dem Eintrag ServerName auftauchen!!!
<VirtualHost 1.2.3.4> ServerName www.domain.tldCBandScoreboard /var/www/scoreboard CBandPeriod 4W CBandDefaultExceededCode 509 CBandLimit 2500G #2.5 TB Limit pro CBandPeriod CBandSpeed 15000000 5 10 # 15 MB, 5 Requests, 10 Verbindungen (Gesamt) CBandRemoteSpeed 2000000 3 1 # 2 MB, 3 Requests, 1 Verbindung (pro Client) ...
Was bedeutet diese Konfiguration im einzelnen?
- /var/www/scoreboard wir benutzt um die Nutzung und Limits zu loggen
- resettet die Limitierung alle 4 Wochen
- Gibt einen 509 Fehler wenn das Limit erreicht wurde
- erlaubt 2.5 TB Pro Intervall (4W)
- erlaubt 15 MBps bei 5 requests pro Sekunden und 10 Verbindungen (gesamt)
- erlaubt 2 MBps mit 3 requests pro Sekunden und 1 Verbindung (pro Client)
Nun noch den Ordner /var/www/scoreboard erstellen
mkdir /var/www/scoreboard chown www-data:www-data /var/www/scoreboard -R
Abschießend den Server neu starten
/etc/init.d/httpd restart
Datenübertragung:
# kbps: 1024 bits pro Sekunde
# Mbps: 1024*1024 bits pro Sekunde
# Gbps: 1024*1024*1024 bits pro Sekunde
# Grundeinstellung: kbps
Traffic-Quote:
* K: 1000 bytes
* M: 1000*1000 bytes
* G: 1000*1000*1000 bytes
* Ki: 1024 bytes
* Mi: 1024*1024 bytes
* Gi: 1024*1024*1024 bytes
* Grundeinstellung is K.
Zeitrahmen:
* S: Sekunde
* M: minute
* H: Stunden
* D: Tage
* W: Wochen
* Grundeinstellung: S
Ein Kommentar
Hey,
warum findet Debian das Paket nicht?:
apt-get install libapache2-mod-cband