Squid com Delay Pool + Dansguardian

Publicado por Leo em 06/12/2008

[ Hits: 9.659 ]

 


Squid com Delay Pool + Dansguardian



Antes de mais nada quero deixar claro que a intenção aqui não é mostrar a instalação ou configuração total do Squid ou do Dansguardian, tratarei de parte de suas configurações, ou seja, fazer com que as políticas de Delay Pools sejam implementadas tendo nesse cenário o Dansguardian como filtro de conteúdo.

Partirei do pressuposto que o destinatário deste tutorial já tem instalado o Squid e Dansguardian, e claro, tem domínio básico sobre eles, seja em sua instalação, seja em sua configuração.

Cenário:
  • Distro: Ubuntu 8.04 Server Linux
  • Iptables 1.3.8
  • Squid 2.6.STABLE18
  • Dansguardian 2.8.0.6

Nesse cenário o Squid está funcionando como Proxy Cache e o Dansguardian como filtro de conteúdo. O Iptables faz simplesmente o redirecionamento de portas.

Problematização

O uso de Delay Pools no Squid é bem simples e com bastante material na internet, inclusive excelentes materiais aqui no VIVA O LINUX, como dito antes essa não será nossa abordagem. Da mesma forma com o Dansguardian. O iptables não merece comentários nesta dica, pelo simples fato que como dito antes, parto do pressuposto que o IPTABLES/SQUID/DANSGUARDIAN estejam em funcionamento e sendo a tarefa do iptables, apenas e tão somente a de redirecionamento.

Pois bem, eis que com esse cenário em funcionamento surge um problema. Como nós sabemos, todas as requisições recebidas pelo iptables na porta 80 serão redirecionadas para porta do Dansguardian (não mencionarei porta aqui, pois cada administrador coloca a que mais lhe convém, particularmente uso a porta 9xxx), em seguida e tendo feito os filtros pré-definidos, o Dansguardian encaminha para o Squid tudo aquilo que não foi por ele negado.

Até aí sem nenhuma novidade. Porém, quando o Dansguardian encaminha os pacotes para o Squid, eles vão sem o SOURCE, ou seja, no log do Squid só estará como source LOCALHOST e/ou LOCALDOMAIN, ou seja, não existe a origem da requisição. Dessa forma as DELAY POOLS não funcionam, ora, como o Squid vai fazer algo se não existe "autor", origem, IP!?

Solução

Bem, agora vamos a parte que realmente nos interessa, como dito antes, serei objetivo.

1. NO SQUID:

No Squid acrescentaremos as seguintes linhas ao seu arquivo squid.conf:

acl (nome) src 127.0.0.1
follow_x_forwarded_for allow (nome)

2. NO DANSGUARDIAN:

No Dansguardian descementaremos ou mudaremos a seguinte linha no arquivo dansguardian.conf:

forwardedfor = on

Pronto!

Eis que seu Squid agora sabendo a origem(IP) poderá aplicar as políticas Delay Pools.

Obs.: Isso servirá também para a aplicação do mecanismo de controle de tamanho de arquivos feito pelo:

reply_body_max_size

Pois sem feito isso o reply_body_max_size terá aplicação para todos.

Outras dicas deste autor

Bloqueando o Hamachi

Autenticação "WPA" entre Ubuntu e servidor Windows 2003 Server

Leitura recomendada

Instalando Firebird 2 com rfunc no Debian

Áudio e vídeo no OpenSUSE

Personalizando o Blackbox

Firefox + FlashGot + Wget + Limite de velocidade

Como configurar o Chronyc no CentOS 7 e Red Hat 7

  

Comentários
[1] Comentário enviado por kepas em 20/01/2012 - 15:42h

Olá,

Cara, eu sei que já faz tempo que você fez esse tutorial.

Mas to passando aqui só pra te agradecer!!!

Esses dias precisei instalar o Dansguardian e passei umas 2 semanas fritando os miolos, a principio pensei que era problema na logica do meu conf do squid, porque ele não respeitava regras com ips, mais tarde reparei que era alguma coisa com a localhost, mais ainda sim não entendia tecnicamente o que era.

E ai com o seu tuto eu entendi tudoo, e agora tudo voltou a funcionar como antes + o Dansguardian.

Salvou minha vida kkkk, :)

Um grande abraço e mais uma vez obrigado!!




Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts