Um script simples que baixa o CVS do
www.phishtank.com e o trata que o Squid bloqueie os sites.
Bom, primeiramente você deverá criar um arquivo shell executável com o seguinte conteúdo:
#!/bin/bash
# Script criado por Leandro Ross - 10/03/2010
# leandroross@gmail.com
# Apago o arquivo anterior do phishtank
rm -r -f online-valid.csv
rm -r -f site_bloqueado.txt
# Faz o download do CVS mais atual do site: Phishtank
/usr/bin/wget -c http://data.phishtank.com/data/online-valid.csv
# Gera um arquivo txt contendo todos as urls
for i in `cat online-valid.csv`; do
SITE=$(echo $i | awk -F "," {'print $2'})
echo "$SITE" >> temp.txt
done
# Trato o arquivo gerado removendo o HTTP e o /
for i in `cat temp.txt`; do
REMOVE=$(echo $i | awk -F "/" {'print $3'})
echo "$REMOVE" >> temps.txt
done
# Removo os índices duplicados
for i in `awk ' !x[$0]++' temps.txt`; do
echo $i >> site_bloqueado.txt
done
# Removo o arquivo temp que criou
rm -r -f temp.txt
rm -r -f temps.txt
# Reload Squid
squid -k reconfigure
# Mensagem de conclusão
echo "Gerado lista de Sites Bloqueados"
Torne o arquivo executável. Bem, eu criei ele na pasta do Squid para gerar o arquivo direto lá.
Após isso coloquei essa configuração no Squid:
acl phishing_bloqueado dstdomain "/etc/squid/site_bloqueado.txt"
http_access deny phishing_bloqueado
Não vou entrar em detalhes do que isso faz, mas resumindo ele lê o arquivo e bloqueia todo o acesso a ele.
Coloquei para meu sistema atualizar este arquivo a cada 5 dias, pois acho que é uma data razoável para não sobrecarregar meu sistema, visto que a cada atualização feita é preciso dar um reload no Squid.
Espero ter ajudado alguém, pois isto me ajudou muito...
Abraço a todos.