Iptables: problema com restrição de MAC

1. Iptables: problema com restrição de MAC

Gustavo Amaral Prudente
gaprudente

(usa OpenSuSE)

Enviado em 02/03/2011 - 11:24h

Olá a todos do fórum.

Eu pesquisei bastante e estou com um problema para bloquear os endereços MAC de todos os computadores e ir liberando os que eu quero que tenham acesso. A funcionalidade deste bloqueio é fazer o controle do acesso de dispositivos móveis na minha rede. Possuo muitos dispositivos cadastrados, o que torna inviável ficar acessando o controle do próprio AP para efetuar o cadastro, além do mais, possuo vários AP's na minha rede.

Por algum motivo, que eu não sei qual é, ele está liberando para todos. É como se a regra que dá o DROP em todos não estivesse funcionando.

Fora isto, o scrip está funcionando perfeitamente.

Segue abaixo o script. Por favor, me ajudem.

-------------------------------------------------------------

#!/bin/sh

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t filter -F
iptables -t filter -X
iptables -t mangle -F
iptables -t mangle -X

modprobe ip_tables
modprobe iptable_nat
modprobe ip_conntrack

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo "Compartilhamento |ATIVADO|"

echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
echo "0" > /proc/sys/net/ipv4/conf/eth0/accept_source_route
echo "0" > /proc/sys/net/ipv4/conf/eth1/accept_source_route
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

#Permite conexao na rede local
iptables -A INPUT -s 172.16.1.0/255.255.0.0 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A FORWARD -m mac --mac-source 00:00:00:00:00:00 -j DROP

#Regras do firewall
iptables -A INPUT -i lo -j ACCEPT

#####libera acesso ao MAC cadastrado
cat /tmp/scripts/tabela_mac | while read LINHA;
do
iptables -A FORWARD -m mac --mac-source $LINHA -j ACCEPT
echo "MAC Address liberado: $LINHA"
done

#####Bloqueia sites
cat /tmp/scripts/lista_sites | while read SITES;
do
iptables -A FORWARD -d $SITES -j REJECT;
echo "Sites bloqueados: $SITES"
done

#####Bloqueando sites por palavras
cat /tmp/scripts/lista_palavras | while read PALAVRAS;
do
iptables -A INPUT -m string --algo bm --string "$PALAVRAS" -j DROP;
#iptables -m string -- algo bm --string "$PALAVRAS" -j DROP
echo "Palavras bloqueadas: $PALAVRAS"
done

#####Bloqueando MSN
iptables -A FORWARD -p TCP --dport 1836 -j REJECT
iptables -A FORWARD -d 64.4.13.0/24 -j REJECT

echo "Firewall ONLINE!"


  


2. Re: Iptables: problema com restrição de MAC

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 02/03/2011 - 11:43h

Eu acho q essa linha abaixo:

iptables -A FORWARD -m mac --mac-source 00:00:00:00:00:00 -j DROP

Deveria ficar após às regras d liberação do MAC, ficando assim:

cat /tmp/scripts/tabela_mac | while read LINHA;
do
iptables -A FORWARD -m mac --mac-source $LINHA -j ACCEPT
echo "MAC Address liberado: $LINHA"
done
iptables -A FORWARD -m mac --mac-source 00:00:00:00:00:00 -j DROP


3. Re: Iptables: problema com restrição de MAC

Gustavo Amaral Prudente
gaprudente

(usa OpenSuSE)

Enviado em 02/03/2011 - 11:49h

obrigado renato, mas eu ja fiz isso tbm...

já cheguei a trocar o FORWARD por INPUT... alterei as ordens... mesmo resultado... o interessante é q se eu pegar a linha

iptables -A FORWARD -m mac --mac-source $LINHA -j ACCEPT

e fizer isso aki:

iptables -A INPUT -m mac --mac-source $LINHA -j DROP

independente de onde eu colocar o: iptables -A FORWARD -m mac --mac-source 00:00:00:00:00:00 -j DROP

Irá dar DROP para todos... todos mesmo.


4. Re: Iptables: problema com restrição de MAC

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 02/03/2011 - 14:07h

Ae com certeza! Então, depois d todas as regras, coloque no final do arquivo:

iptables -A FORWARD -j DROP

Dae bloqueia tudo q vc não colocar. Falo isso pq não tem como bloquear todos os MAC's a não ser dessa forma.


5. Re: Iptables: problema com restrição de MAC

Gustavo Amaral Prudente
gaprudente

(usa OpenSuSE)

Enviado em 02/03/2011 - 15:49h

fiz a dica q vc falou e ele deu DROP geral.

Será q eu preciso liberar porta p navegar ou algo assim? nao estou conseguindo. Não consigo achar a falha.


6. Re: Iptables: problema com restrição de MAC

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 02/03/2011 - 15:53h

É... o q eu fiz foi realmente bloquear tudo, ou seja, se vc não libera as devidas conexões d FORWARD pras portas necessárias, bloqueia (80, 443, 25, 110 etc.).


7. Re: Iptables: problema com restrição de MAC

Gustavo Amaral Prudente
gaprudente

(usa OpenSuSE)

Enviado em 02/03/2011 - 16:01h

eu coloquei no início do script a seguinte linha:

iptables -A INPUT -p tcp -i eth1 -m multiporta --dport 80,25,53,110,443 -j ACCEPT


no final do arquivo coloquei o comando que você me passou.

Mesmo tendo especificado as portas, ele ainda continua dando DROP em todos.

Confesso que iptables é algo bastante novo para mim. Eu trabalhei com outros tipo de firewall, mas nunca trabalhei com iptables, entao, ja viu, estou apanhando bastante com ele.

Se você tiver mais alguma idéia para aprimorar, ou mais alguém que passe pelo fórum e que tenha uma idéia, me ajudem ai. vlw!


8. Re: Iptables: problema com restrição de MAC

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 02/03/2011 - 16:07h

Não é INPUT, é FORWARD...






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts