Controlando a banda de download no Apache
Prezados Colegas,
Primeiramente Saudações Pinguianas a todos!
Nesse artigo eu vou explicar com limitar a banda no Apache.
Introdução
O Apache é um servidor de páginas WEB mais famoso da atualidade e muito conhecido no mundo livre. Muitas pessoas o utilizam para criar servidores de hospedagem de sites WEB e vendem largura de banda, espaço em disco e acesso a algum banco de dados.
O que muitos não sabem como fazer é este tipo de controle e como agregar isso ao Apache2 de forma simples e eficiente. O Debian vem nos dar uma mão para resolver este problema e conseguir agregar uma solução simples e prática de utilizar rapidamente um controle de banda para seus domínios virtuais (Virtual Domains).
Então, vou pré-supor que você tenha o apache instalado para implementar essa solução.
Entendendo o módulo mod_cband do Apache2
O módulo mod_cband é um módulo do Apache2 fornecido para resolver o problema de limitar a banda utilizada pelos usuários e virtual hosts. A versão (0.9.7.4-2) do módulo pode definir quotas de banda utilizada tanto para usuários, quanto para os virtual hosts, velocidade máxima de download, requisições por segundo e o número máximo de conexões de IP simultâneas.
Agora, não sei porque cargas d’águas esse pacote não vem mais nos repositórios do Debian. Por isso, vamos fazer o download e instalação, conforme eu vou mostrar nos comandos abaixo:
Baixando:
wget -c https://downloads.aprendendolinux.com/programas/libapache2-mod-cband_0.9.7.4-2_i386.deb
Instalando:
dpkg -i libapache2-mod-cband_0.9.7.4-2_i386.deb
Uma vez instalado o pacote do módulo, ativá-lo no Debian é muito simples, basta executar:
a2enmod cband
Configurando um domínio virtual simples
Para que o controle de tráfego feito seja aproveitado é necessário que sejam adicionados ao domínio virtual as seguintes diretivas mostradas no exemplo abaixo:
<VirtualHost *> ServerName www.dominio.com.br ServerAdmin [email protected] DocumentRoot /var/www/dominio CBandLimit 1G CBandRemoteSpeed 10kb/s 3 5 CBandExceededSpeed 128 5 15 CBandPeriod 4W <Location /cband-status> SetHandler cband-status </Location> <Location /cband-status-me> SetHandler cband-status-me </Location> </VirtualHost>
Podemos ver que as configurações que diferem de configurações normais são:
CBandLimit: Define a Banda limite que pode ser utilizada
CBandRemoteSpeed: Define a velocidade de conexão que pode ser utilizada no máximo, onde 10kb/s é a taxa de tráfego por segundo, o 3 é o número máximo de requisições por segundo e o 5 é o número máximo de conexões vinda de um mesmo cliente.
CBandExceededSpeed: Define o tráfego máximo que pode ser utilizado caso a velocidade de transferência tenha sido excedida.
CBandPeriod: É o tempo que leva para a contagem do uso de banda definido em CBandLimit expirar.
Após estas configurações, definimos duas localizações:
/cband-status: Que vai mostrar a utilização de banda de todos os subdomínios é vai possibilitar realizar um reset nos contadores de banda.
/cband-status-me: Que vai mostrar a utilização de banda do domínio na barra de endereços (no caso um domínio virtual em questão).
Feito estas configurações, basta dar um ‘force-reload’ no Apache para ativar as configurações:
/etc/init.d/apache2 force-reload
Prontinho! A banda de download está limitada!
Espero ter colaborado.
Esse artigo foi útil? Colabore com o nosso site para podermos continuar dando mais dicas como essa!
Formas de doação:
- Boleto / Cartão de crédito: https//bit.ly/AprendendoLinux
- Pix: [email protected]
- PicPay: @henrique_fagundes
- PayPal: [email protected]
- Bitcoin: bc1qtnn5z058htzy799dslwrpjcdpm0vuta3vrj28l
Favorecido: Luiz Henrique Marques Fagundes