iptables: regra FORWARD não entrando em vigor

1

Eu tenho uma caixa linux rodando o iptables. O tráfego passa por ele chegando em wlan0 e saindo pela wlan1. Eu quero permitir apenas máquinas específicas passarem. Eu tentei pelo MAC, ele falhou, então eu tentei por IP e para minha surpresa também falhou.

Para ambos os casos, coloco a política FORWARD como DROP

$ iptables -P FORWARD DROP

Então eu fiz

$ iptables -A FORWARD -i wlan0 -m mac --mac-source 76:AB:BF:80:4E:B3 -j ACCEPT

Quando não funcionou, eu ativei o log com:

$ iptables -I FORWARD -i wlan0 -j LOG

kern.log mostrou que meu endereço MAC de origem era o MAC do linux wlan0. Então eu tentei pelo endereço IP:

$ iptables -A FORWARD -s 192.168.1.10 -j ACCEPT

Também falhou. Eu então tentei deixar a política como aceitar e colocar o seguinte, para largar tudo, depois da minha regra acima:

$ iptables -A FORWARD -j DROP 

Mas ainda não funcionou, pois meu cliente teve seu pacote descartado. Só funciona quando a política é ACCEPT (mas não há filtragem). Isso me faz acreditar que a regra não corresponde ao tráfego. O que estou fazendo errado?

EDITAR:

Minhas cadeias iptables completas:

$ iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             MAC 76:AB:BF:80:4E:B3
ACCEPT     all  --  192.168.1.10         anywhere           

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination   
    
por Adriano_epifas 25.12.2017 / 03:53

0 respostas