Script para controle de banda usando FreeRADIUS, PPPoE e HTB
Publicado por Wilker Azevedo 22/07/2008
[ Hits: 11.520 ]
Homepage: plantec.eco.br
Aqui estão os scripts que utilizo para o controle de banda dos meus clientes.
O script ip-up foi feito por mim, mas como fonte de estudos utilizei alguns script que são distribuidos na internet. Aviso que qualquer semelhança se dá no modo de utilização e finalidade. Qualquer script para controle de banda usando TC será muito parecido mesmo.
Veja em [ Fazer Download ] para o script ip-up.
Veja em [ Código-fonte ] para o script ip-down e maiores instruções.
Para este script funcionar corretamente é preciso FreeRADIUS, PPPoE e HTB (MySQL opicional) Aqui estão os scripts que utilizo para o controle de banda dos meus clientes. O script ip-up foi retirado da internet (não me lembro mais quem é o autor) mas tive que fazer muitas modificações para funcionar de acordo com minha necessidade. Para este script funcionar corretamente é preciso FreeRADIUS, PPPoE e HTB (MySQL opicional) Configuração: Para MySQL: Coloque na tabela radroupreply (todos os clientes do grupo) ou radreply (para cliente individual) os seguintes atributos: Upstream-Speep Downstream-Speed Os operadores devem ser := Quem não usa MySQL coloca no raddb/users (consulte help do FreeRADIUS) O ip-down apenas apaga as regras. Funcionamento: ip-up recebe como parâmetros $1 (interface virtual) e $5 (ip do cliente) e procura no arquivo criado pelo radiusclient as velocidades up e down. Caso não encontre, um default é utilizado. Ao contrário do que muitas pessoas dizem, HTB faz controle de UPLOAD. Inclusive, é bem mais simples, como você pode notar no script, upload é controlado com apenas uma linha de comando. Como só é possível colocar 1 script, então coloquei o ip-up. Mas o ip-down (que é bem menor) está aqui abaixo, basta você copiar e criar o arquivo /etc/ppp/ip-down: #=======> ip-down #! /bin/bash # Este script pode ser distribuido livremente desde que permaneça o crédito do autor. # Script criado por Wilker Azevedo - 2007 # cytron@cytron.com.br # www.listnux.org (contribua você também) # ppp=$1 echo "Logout" $ppp `date` >> /usr/local/var/log/pppd.log echo >> /usr/local/var/log/pppd.log tc qdisc del dev $ppp root tc qdisc del dev $ppp ingress #=======> fim
Criando usuário e configurando o sudo através de script no Slackware
Logs do daemontools - tradução de timestamp
Script de backup de múltiplos diretórios + LOG
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (15)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)
Pendrive não formata de jeito nenhum (4)