thbenko
(usa Debian)
Enviado em 27/05/2013 - 12:10h
Salve Galera.
Pessoal, estou desenvolvendo um script de firewall e estou com um problema quanto a bloqueio de alguns endereços e liberar os mesmos para alguns mac's somente.
Fiz diversos testes e tentei várias combinações, mas nenhuma delas funcionou.
Eu tenho um arquivo chamado: fw-bloqdst, onde existem alguns endereços que desejo bloquear direto no firewall.
E tenho outro arquivo chamado: mac-lib, onde existem alguns mac's aos quais eu gostaria que os endereços acima fossem liberados.
Depois de tentar todas combinações possíveis e imagináveis (dentro do meu conhecimento) e todos sem sucesso, o script ficou desta forma (Somente função que faz o bloqueio):
BLOQDST () {
for i in `cat /concept/fw-bloqdst | grep -v ^# | grep -v ^$`; do
for j in `cat /concept/mac-lib | grep -v ^# | grep -v ^$`; do
$IPT -t nat -A PREROUTING -d $i -m mac --mac-source $j -j ACCEPT
$IPT -t nat -A PREROUTING -s $i -m mac --mac-source $j -j ACCEPT
$IPT -A FORWARD -d $i -m mac ! --mac-source $j -j DROP
$IPT -A FORWARD -s $i -m mac ! --mac-source $j -j DROP
$IPT -A INPUT -d $i -m mac ! --mac-source $j -j DROP
$IPT -A INPUT -s $i -m mac ! --mac-source $j -j DROP
done
done
}
Já tentei liberar antes e ir bloqueando depois, ao invés de usar o parâmetro " ! ", enfim, já tentei tudo e não consegui. Ele bloqueia com sucesso, mas não libera para o MAC que eu seto, fica tudo bloqueado. Alguém ai poderia dar uma força?
Desde já, agradeço a atenção de todos!!!