Liberação e bloqueio de sites por horário usando proxy Squid
Dica publicada em Linux / Introdução
Liberação e bloqueio de sites por horário usando proxy Squid
Exceções no mundo dos administradores de rede hoje em dia tem se tornado cada vez mais comum...
Uma dessas situações que com certeza acontecem numa proporção até considerável é a liberação de acesso a determinados sites cujo conteúdo muitas vezes é bloqueado por não ser de conteúdo profissional em determinados horários ou dias.
Por isso criei algumas regras de filtros e ACLs para serem usadas junto ao Squid com o intuito de proporcionar maior facilidade na hora de implementar estas exceções que muitas vezes dificultam nosso trabalho.
Bom pessoal, primeiramente não vou ensinar aqui como configurar o Squid para fazer bloqueios de sites etc e tal, vou apenas orientar como criar filtros e ACLs para liberação de determinados sites em determinados horários.
Vamos lá então:
Depois de configurado o Squid com ou sem proxy transparente e com seu bloqueio de sites ativo no sistema, vá no arquivo de configuração do mesmo, que geralmente se encontra em /etc/squid/squid.conf, e lá na seção de ACLs crie o seguinte filtro:
Uma dessas situações que com certeza acontecem numa proporção até considerável é a liberação de acesso a determinados sites cujo conteúdo muitas vezes é bloqueado por não ser de conteúdo profissional em determinados horários ou dias.
Por isso criei algumas regras de filtros e ACLs para serem usadas junto ao Squid com o intuito de proporcionar maior facilidade na hora de implementar estas exceções que muitas vezes dificultam nosso trabalho.
Bom pessoal, primeiramente não vou ensinar aqui como configurar o Squid para fazer bloqueios de sites etc e tal, vou apenas orientar como criar filtros e ACLs para liberação de determinados sites em determinados horários.
Vamos lá então:
Depois de configurado o Squid com ou sem proxy transparente e com seu bloqueio de sites ativo no sistema, vá no arquivo de configuração do mesmo, que geralmente se encontra em /etc/squid/squid.conf, e lá na seção de ACLs crie o seguinte filtro:
### RESTRIÇÃO POR HORÁRIOS
acl net_local src 192.168.0.0/255.255.255.0
acl sites url_regex "/etc/squid/sites.txt"
acl h_manha time MTWHF 08:00-12:00
acl h_tarde time MTWHF 14:00-19:30
http_access deny net_local sites h_manha
http_access deny net_local sites h_tarde
acl net_local src 192.168.0.0/255.255.255.0
acl sites url_regex "/etc/squid/sites.txt"
acl h_manha time MTWHF 08:00-12:00
acl h_tarde time MTWHF 14:00-19:30
http_access deny net_local sites h_manha
http_access deny net_local sites h_tarde
Explicando:
Na primeira linha o que fiz foi especificar uma ACL de nome net_local cuja origem é minha rede interna.
Na segunda linha criei uma outra ACL de nome sites onde informo o caminho do arquivo que vai armazenar os endereços dos sites que quero liberar nos horários a serem especificados abaixo.
A terceira e a quarta linha são as ACLs que declarei para armazenar os horários para fazer assim o bloqueio dos sites que estarão listados no arquivo sites.txt.
h_manha recebe de segunda a sexta-feira os horários de 08:00hs às 12:00hs
h_tarde recebe de segunda a sexta-feira os horários de 14:00hs às 19:30hs
Sendo MTWHF: segunda (Monday), - terça (Tuesday), quarta (Wednesday) - quinta (Thursday) e sexta (Friday).
Crie agora o arquivo sites.txt na pasta /etc/squid usando o editor "vi" mesmo e nesse arquivo coloque todos os sites que você quer liberar usando a seguinte estrutura:
www.hotmail.com
www.gmail.com
mail.globo.com
mail.terra.com
www.ig.com.br
www.gmail.com
mail.globo.com
mail.terra.com
www.ig.com.br
Dessa forma, o Squid vai bloquear todos os sites listados no arquivo sites.txt que se encontra em /etc/squid/ (ACL sites) para toda a rede (ACL net_local) no horário que compreende de 08:00hs da manhã até o 12:00 (ACL h_manha) e no horário que compreende de 14:00hs da tarde até às 19:30hs da noite (ACL h_tarde).
Resumindo:
Neste caso estou liberando o acesso aos sites listados no arquivo sites.txt somente de segunda à sexta-feira durante o horário de almoço, após às 19:30 horas e aos sábados e domingos.
Uma observação importante a considerar é que os sites que você informar no arquivo sites.txt não poderão estar também no conteúdo de seu arquivo principal de bloqueios caso este exista, porque senão as regras criadas aqui não irão funcionar.
Pronto!!!
Espero ter ajudado...
Um abraço a todos.
Bom.. uso o squid, e a liberação dos ips foi feito da seguinte forma:
1- Criei uma ACL que libera todos os ips da rede, ou seja, todos os IPs tem acesso.
2- Criei uma ACL para bloquear os sites restritos, então, todos os IPs, passam necessariamente pelo SQUID, e automaticamente passam por essa ACL chamada BLOCK.ACL (onde tem todos os arquivos restritos).
COMO EU FARIA PRA LIBERAR 2 IPs da rede para nao entrar nessa regra, ou seja, que os IPs acessassem o PROXY / SQUID, pegando apenas a parte de ARMAZENAMENTO DE CACHE DE SITES e nao esse arquivo BLOCK.ACL !??!
SERÁ Q FUI BEM CLARO ?!?!
PRECISO DE SUA AJUDA URGENTE.. SE PUDER ME ADD..
kaddoshi@hotmail.com
um grande abraço.. obrigado...