Problemas com bloqueio. [RESOLVIDO]

1. Problemas com bloqueio. [RESOLVIDO]

Thiago Alberto Benko
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!!!


  


2. Re: Problemas com bloqueio. [RESOLVIDO]

Renato Freitas
nanatinho

(usa Debian)

Enviado em 27/05/2013 - 12:47h

Boa tarde.

Bom, antes mesmo de fazer testes com teu script, me responda o seguinte:

Você tem roteamento na tua Rede Interna? Se, sim, esta questão de bloquear por mac-address não irá funcionar, pois o mac que chegará no teu firewall não será o do equipamento e sim o do ponto de roteamento (switch, router, ou mesmo equipamento que faça roteamento).


Abraço e fq com DEUS!!!


3. Re: Problemas com bloqueio. [RESOLVIDO]

Thiago Alberto Benko
thbenko

(usa Debian)

Enviado em 27/05/2013 - 13:15h

nanatinho escreveu:

Boa tarde.

Bom, antes mesmo de fazer testes com teu script, me responda o seguinte:

Você tem roteamento na tua Rede Interna? Se, sim, esta questão de bloquear por mac-address não irá funcionar, pois o mac que chegará no teu firewall não será o do equipamento e sim o do ponto de roteamento (switch, router, ou mesmo equipamento que faça roteamento).


Abraço e fq com DEUS!!!


Opa, boa tarde!

Então o meu servidor linux que faz o roteamento.
Eu tenho duas placas de rede, sendo uma ligado em um roteador sem fio (e o modem no roteador) e a outra interface que é da rede interna.
Eu coloquei para gerar o log no iptables e ele me deu o seguinte retorno:
...OUT=eth0 SRC=192.XX.XX.22 DST=173.252.112.23...
Esse micro .22 tem o mac na lista do liberado.
Será que ele ta recebendo algum mac diferente? Desculpe minha ignorância no assunto, mas se fosse assim ele não teria que dar problema na regra do firewall ao qual eu libero mac's para não passar pelo proxy?
$IPT -t nat -A PREROUTING -m mac --mac-source 00:XX:XX:XX:XX:BD -p tcp -j ACCEPT
depois coloco a regra do redirecionamento da 80 para a 3128 (squid) e os micros com os mac's que eu libero não passam pelo proxy.

Só mais um detalhe que lembrei agora, eu fiz o teste, colocando os mac's do roteador wirelles e do modem nos liberados, e nada tambem!!!

Se for este o caso, o que me aconselha, Bloquear pelo IP?

Att.



4. Re: Problemas com bloqueio. [RESOLVIDO]

Renato Freitas
nanatinho

(usa Debian)

Enviado em 05/06/2013 - 12:56h

Primeiramente me desculpe a demora em responder.

Olha só, como você mencionou, existe um routeador wirelles na tua rede, sendo assim, não será possível criar regras utilizando o mac-address, pois quando há roteamento o roteador altera o mac-addres para seu próprio mac-address, sendo assim as regras não liberarão nem bloquearão nada, pois o IP que irá fazer a requisição é a do cliente e não a do roteador.

Olha só você pode fazer o seguinte:

1. Reservar os endereços IPs no DHCP; e,
2. Liberar as regras via IP

Fazendo assim terá certeza que aquele IP sempre será daquele equipamento.



Abraço e fq com DEUS!!!


5. Re: Problemas com bloqueio. [RESOLVIDO]

Thiago Alberto Benko
thbenko

(usa Debian)

Enviado em 05/06/2013 - 13:52h

nanatinho escreveu:

Primeiramente me desculpe a demora em responder.

Olha só, como você mencionou, existe um routeador wirelles na tua rede, sendo assim, não será possível criar regras utilizando o mac-address, pois quando há roteamento o roteador altera o mac-addres para seu próprio mac-address, sendo assim as regras não liberarão nem bloquearão nada, pois o IP que irá fazer a requisição é a do cliente e não a do roteador.

Olha só você pode fazer o seguinte:

1. Reservar os endereços IPs no DHCP; e,
2. Liberar as regras via IP

Fazendo assim terá certeza que aquele IP sempre será daquele equipamento.



Abraço e fq com DEUS!!!


Opa, mais uma vez obrigado pela atenção.

Então, eu fiz o teste em um cliente que o modem está em modo bridge ligado direto no servidor. O cliente não tem nenhum roteador entre a rede interna e o servidor. Mesmo assim a regra não funcionou. :(



6. Re: Problemas com bloqueio. [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 05/06/2013 - 14:42h

thbenko escreveu:

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!!!


Tente assim:

maclist=/concept/mac-lib
fw-bloqdst=/concept/fw-bloqdst

for i in 'cat $maclist' ; do
for j in 'cat $fw-bloqdst' ; do

ip='echo $i | cut -d ';' -f 2'
mac='echo $i | cut -d ';' -f 1'

iptables -A FORWARD -d 0/0 -s $ip -m mac --mac-source $mac -j ACCEPT
iptables -A FORWARD -d 0/0 -s $j -j DROP
done
done


E na lista de mac coloque assim:

00:02:03:04:05:06;192.168.1.22
00:01:02:03:04:05;192.168.1.23

Quantos computadores tem na tua rede interna?


7. Re: Problemas com bloqueio. [RESOLVIDO]

Renato Freitas
nanatinho

(usa Debian)

Enviado em 10/06/2013 - 12:50h

O que tem dentro de: /concept/fw-bloqdst ?

Envie um exemplo das regras aplicadas para um determinado IP:

iptables -L -nv
iptables -L -nv -t nat


Abraço e fq com DEUS!!!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts