Script para controle de banda usando FreeRADIUS, PPPoE e HTB
Publicado por Wilker Azevedo 22/07/2008
[ Hits: 11.486 ]
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
Configuração do Iptables em modo texto.
Systemctl-config - parada ou reativação de um serviço do systemD
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
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Estou com sede em aprender sobre o nosso querido Linux. (1)
big linux sem audio como resolver (2)
Como faz para dar um update-grub por shell script [RESOLVIDO] (3)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta