Controle de banda com Slackware 10 + CBQ + Iptables + DHCP

Um roteador com controle de banda e com boas ferramentas está muito caro, pegue uma máquina antiga e crie um servidor para fazer o controle de banda, firewall e DHCP. Descrevo neste artigo o que foi feito para montar o servidor utilizando um AMD-K62 500Mhz com 256 MB de RAM.

[ Hits: 37.174 ]

Por: yros aguiar em 10/10/2010


Criando as regras do IPtables



Crie um script e coloque na inicialização do sistema no arquivo: /etc/rc.d/rc.local

A nossa rede interna é a 192.168.1.0/29 e que está ligada na placa eth0, tem uma filtragem por mac para evitar que fosse cascateado a conexão que vai para o cliente, obtendo maior segurança.

Conteúdo do arquivo:

echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -X
iptables -t nat -F
/sbin/modprobe iptable_nat
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_tables
/sbin/modprobe ipt_unclean
/sbin/modprobe ipt_limit
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_REJECT
/usr/sbin/iptables -F
/usr/sbin/iptables -t nat -F
/usr/sbin/iptables -P FORWARD DROP

# MACS permitidos

# CLIENTE1
iptables -A FORWARD -i eth0 -m mac --mac-source 00:1F:E2:34:07:2B -j ACCEPT
iptables -A INPUT -i eth0 -m mac --mac-source 00:1F:E2:34:07:2B -j ACCEPT

#CLIENTE2
iptables -A FORWARD -i eth0 -m mac --mac-source 00:1F:E2:34:07:2B -j ACCEPT
iptables -A INPUT -i eth0 -m mac --mac-source 00:1F:E2:34:07:2B -j ACCEPT


# Nega o resto
iptables -A FORWARD -i eth0 -m mac --mac-source ! FF:FF:FF:FF:FF:FF -j DROP
iptables -A FORWARD -i eth0 -m mac --mac-source ! 00:00:00:00:00:00 -j DROP
iptables -A INPUT -i eth0 -m mac --mac-source ! FF:FF:FF:FF:FF:FF -j DROP
iptables -A INPUT -i eth0 -m mac --mac-source ! 00:00:00:00:00:00 -j DROP

/usr/sbin/iptables -A INPUT -i lo -j ACCEPT
/usr/sbin/iptables -A OUTPUT -o lo -j ACCEPT
/usr/sbin/iptables -A FORWARD -s 192.168.1.0/29 -d 0/0 -j ACCEPT
/usr/sbin/iptables -A FORWARD -s 0/0 -d 192.168.1.0/29 -mstate --state ESTABLISHED,RELATED -j ACCEPT

/usr/sbin/iptables -t nat -A POSTROUTING -s 192.168.1.0/29 -d 0/0 -j MASQUERADE

Crie este arquivo, salve e mude as permissões dele para que seja executável, adicione no /etc/rc.d/rc.local para que seja executado na inicialização.

Página anterior     Próxima página

Páginas do artigo
   1. Configurando o DHCP
   2. Configurando o CBQ
   3. Criando as regras do IPtables
   4. Configurando a conexão de internet
Outros artigos deste autor

Introdução ao DevOps - Infraestrutura como código

Squid com autenticação e ACLs apartir do grupos do Active Diretory

Como gerenciar cotas de disco

Elaborando uma política de segurança para a empresa

Leitura recomendada

Introdução ao Firewall Linux

Entendendo TCP/IP (Parte 5) - Portas TCP/UDP

IPCop Firewall - Uma ótima opção de proteção para sua rede ADSL

Segurança com iptables

Instalar e configurar o Nftables com exemplos básicos de configurações

  
Comentários
[1] Comentário enviado por yros em 10/10/2010 - 13:46h

Lembrando que os dois ultimos comandos foram publicados incorretamente por mim, segue a correção:

echo "/sbin/ifconfig eth0 ipfixo netmask mascaradoip broadcast enderecodebroadcastdoip" >> /etc/rc.d/rc.local
echo "/sbin/ip route add default via ipdogateway" >> /etc/rc.d/rc.local

[2] Comentário enviado por bruno.prestes em 19/10/2010 - 11:23h

parceiro ta excelente seu artigo, antes de ler seu artigo fazer controle de banda pra mim era um bicho de 7 cabeças... mas com sua didática facilitou muito o entendimento... fica uma pergunta, mas pq não parei ainda pra analisar... como entra o squid pra fazer um cache na minha conexão aeee??? aguardo abraços e sucesso aeee pra vc... MSN: bruno.prestes@gmail.com / Twitter: bruno_prestes

[3] Comentário enviado por yros em 19/10/2010 - 12:21h

Voce tem que configurar o squid em modo transparente, no artigo: http://www.vivaolinux.com.br/artigo/Proxy-Squid-Transparente explica como configurar.

Qualquer dúvida entre em contato:

E-mail: yrosaguiar@gmail.com
Twitter:@yrosaguiar
MSN:yrosaguiar@hotmail.com


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts