Ver Feed RSS

info24hs

Bloqueio de Sites com Iptables

Avalie este Post de Blog
Este script serve para gerenciar o acesso aos sites que devem ser bloqueados para a rede interna.

Dentro do script de firewall adcione as linhas abaixo, certifique-se que o arquivo contendo os sites bloqueados estejam no mesmo diretório da variável "DIR".

######################### sites_negados.sh ##########################

### Variaveis ###
IPTABLES=/sbin/iptables
DIR=/etc

# Bloquear acesso de sites negados a rede interna
for i in `cat $sites`;
do
$IPTABLES -t filter -A FORWARD -s $LAN -d $i -j DROP
$IPTABLES -t filter -A FORWARD -s $i -d $LAN -j DROP
$IPTABLES -t filter -A INPUT -s $i -j DROP
$IPTABLES -t filter -A OUTPUT -d $i -j DROP
done


######################### sites_negados.sh ###########################



Arquivo com os sites_negados.

############################## sites ###############################

www.microsoft.com
www.orkut.com
www.sexo.com

############################## sites ###############################

Atualizado 22-09-2009 em 15:31 por info24hs

Categorias
Linux , Firewall

Comentários

  1. Avatar de Patrick
    boa dica, mas isso não funciona perfeitamente. No orkut.com por exemplo o DNS resolve em varios IPs diferentes, então quando o iptables resolver o nome do dominio vai adicionar UM IP na regra, se o usuario resolver orkut.com em um IP diferente do que o firewall ele vai acessar o orkut normalmente.
  2. Avatar de Magnun
    Eu ia fazer um comentário sobre isso... Mas exatamente contrário ao seu. Se não me engano, o iptables pega todos os ips vinculados ao FQDN e cria várias regras. esse comportamento pode inclusive gerar dificuldades para gerenciar o iptables.

    Eu recomendaria criar uma Chain somente para bloqueios de sites e fazer um jump (-j) nas tabelas FORWARD, INPUT e OUTPUT. Dessa forma fica mais fácil visualizar as regras.

    Outro problema que pode vir a ocorrer é se o seu firewall tem um Up Time muito grande, podem ser adicionados ou removidos IPs no balanceamento do FQDN e seu iptables estará desatualizado. Para corrigir isso você pode por um script no cron que atualiza somente a Chain de bloqueios por FQDN.

    Até mais...
  3. Avatar de Patrick
    é verdade Magnun acabei de testar isso agora e funciona exatamente como voce falou. tenho que me atualizar... comentei pq em versoes antigas do iptables isso nao ocorria, fizeram a alteração e eu nem sabia hehehehe

    valeu!
  4. Avatar de info24hs
    Pois é.. não é uma solução 100% garantida.. mas quebra o galho..
  5. Avatar de Magnun
    Garantida ela é. Só não é 100% eficaz. Mas nada que um pouco de trabalho não resolva
  6. Avatar de fenixprovedor
    complememtando o script - para bloqueio de programas P2P

    #bloquio de programas P2P
    # Bittorrent:
    $IPTABLES -t nat -A PREROUTING -i $WAN -p tcp --dport 6881:6889 -j DNAT --to-dest 192.168.0.2
    $IPTABLES -A FORWARD -p tcp -i $WAN --dport 6881:6889 -d 192.168.0.2 -j REJECT
    #iMesh: #BearShare:
    $IPTABLES -A FORWARD -p TCP --dport 6346 -j REJECT
    #ToadNode:
    $IPTABLES -A FORWARD -p TCP --dport 6346 -j REJECT
    #WinMX:
    $IPTABLES -A FORWARD -d 209.61.186.0/24 -j REJECT
    $IPTABLES -A FORWARD -d 64.49.201.0/24 -j REJECT
    #Napigator:
    $IPTABLES -A FORWARD -d 209.25.178.0/24 -j REJECT
    #Morpheus:
    $IPTABLES -A FORWARD -d 206.142.53.0/24 -j REJECT
    $IPTABLES -A FORWARD -p TCP --dport 1214 -j REJECT
    #KaZaA:
    $IPTABLES -A FORWARD -d 213.248.112.0/24 -j REJECT
    $IPTABLES -A FORWARD -p TCP --dport 1214 -j REJECT
    #Limewire:
    $IPTABLES -A FORWARD -p TCP --dport 6346 -j REJECT
    #Audiogalaxy:
    $IPTABLES -A FORWARD -d 64.245.58.0/23 -j REJECT
    #hotposter
    $IPTABLES -A FORWARD -d 62.116.83.62 -j REJECT
    $IPTABLES -A FORWARD -d 62.116.83.0/24 -j REJECT
    echo "ativado o bloqueio de Programas P2P"
    echo "ON .................................................[ OK ]"

+ Enviar Comentário