[FUG-BR] IPFW - Bloquear dominios pelo Firewall
Otavio Augusto
otavioti em gmail.com
Sexta Junho 8 12:30:14 BRT 2012
Uma boa solução é colocar instalar o dnsmasq e fazer dele o dns cache
resolver da rede inteira. se for preciso redirecione a a porta udp e
tcp 53 pra ele.
E nele vc pode apontar os dominios que quiser para 127.0.0.2 assim
ninguem acessa.
Em 7 de junho de 2012 13:37, Renato Frederick
<renato em frederick.eti.br> escreveu:
> Opa,
>
> Danilo, sem um proxy(Squid e tal),que faz o L7 e vai inspecionar a URL,
> etc, etc, estes bloqueios por IP - no meu ponto de vista são muito
> radicais e manuais.
> Colocar o ipfw para dar deny dependendo de nome é um problema também,
> seu firewall fica preso ao DNS responder.
> o Ideal é usar um squid/lusca transparente e fazer nele o controle de URL.
>
> Se o servidor não puder rodar squid, aí só vejo alternativa você usar o
> whois para obter os blocos de IP deles e ir bloqueando.
>
>
> Em 07/06/12 13:07, Danilo Neves escreveu:
>> Caro colegas da comunidade....é o seguinteee
>> Não sei se estou fazendo da forma correta ou se um jeito melhor (sem
>> proxy), mas vamos supor que eu queira bloquear o facebook.com
>> pelo ipfw.
>>
>> ipfw add deny ip from any to facebook.com
>>
>> Nesse caso ele só vai bloquear o ip que resolveu na hora como mostro
>> abaixo...mas o facebook é resolvido por vários IPs...e sendo assim não
>> seria a forma ideal.
>>
>> # ipfw show
>> 00100 0 0 deny tcp from any to 69.171.224.37
>>
>>
>> No iptables ele já pega todos os ips e já bloqueia.
>>
>> Comando para bloquear
>> #iptables -A OUTPUT -d facebook.com.br -j DROP
>>
>> Listando os ips bloqueados
>> #iptables -nL OUTPUT
>> Chain OUTPUT (policy ACCEPT)
>> target prot opt source destination
>> DROP all -- 0.0.0.0/0 69.171.242.11
>> DROP all -- 0.0.0.0/0 66.220.158.11
>> DROP all -- 0.0.0.0/0 69.171.224.37
>> DROP all -- 0.0.0.0/0 66.220.149.11
>> DROP all -- 0.0.0.0/0 69.171.229.11
>>
>> Vejam que ele já pegou todos os ips e dropou :D
>>
>> Agora vem a pergunta....no ipfw tem algum parâmetro que eu tenho q colocar
>> para bloquear todos os ips que resolve o nome facebook.com?
>>
>>
>> Veja uma alternativa em script e table dentro do arquivo do firewall a ser
>> carregado:
>> --------------------------------------------------------------------------------
>> ipfw -f flush
>> # Table
>> # é só criar um arquivo /etc/rc.blacklist e colocar dentro o nome dos
>> domínios a serem bloqueados
>>
>> while read domain
>> do
>> nslookup $domain | grep Address | grep -v '#' | egrep
>> '([0-9]{1,3}\.){3}([0-9]){1,3}' | awk '{print $2}'>> /etc/blockedips
>> done< /etc/rc.blacklist
>>
>> ipfw -f table 91 flush
>> for rede in $(cat /etc/blockedips) ; do
>> ipfw table 91 add $rede
>> done
>>
>> rm /etc/blockedips
>>
>>
>> ipfw add 1 deny ip from any to "table(91)"
>>
>> -----------------------------------------------------------------------------------------------
>>
>>
>> Ou seja...quando eu coloco dentro do arquivo /etc/rc.blacklist os nome dos
>> domínios
>>
>> facebook.com
>> terra.com.br
>>
>> ele vai resolver todos os ips do domínio com nslookup e jogar pra dentro do
>> arquivo os /etc/blockedips que colequei dentro da table 91.
>> Tendeu????
>>
>> Tem uma forma melhor de fazer isso ou correta com ipfw ??
>> -------------------------
>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>
>
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
--
Otavio Augusto
---------------------
Consultor de TI
Citius Tecnologia
31 37761866
31 88651242
http://www.citiustecnologia.com.br
Mais detalhes sobre a lista de discussão freebsd