Conceito de ACLs:
Acl = access list
Acl é o que você quer liberar e o que você quer bloquear, nada mais que isto, no começo tive um pouco de dificuldade para entender, é como ditar o que você quer, mas seguindo o padrão do
Squid e seus comandos.
Exemplo de listas de acessos (ACL):
#A acl "proibidos" é usada para fazer bloqueio baseado em palavras
acl palavras_proibidas dstdom_regex -i "/etc/squid/acl/palavras_proibidas.conf"
http_access deny palavras_proibidas
A acl acima com o nome "proibidos" é usada para bloquear palavras, e o conteúdo, as palavras que você vai bloquear, está localizado na pasta /etc/squid/acl, no arquivo palavras_proibidas.conf. Todo o conteúdo desse arquivo será bloqueado com o comando "http_access deny palavras_proibidas".
O Squid só executa comandos com linhas descomentadas, reparem que o sinal #, famoso jogo da velha, está comentando a linha, assim facilita o administrador entender para que serve aquele comando, facilita a vida de muita gente.
Vamos para outro exemplo:
#liberar IPs diretoria
acl ips_liberados src "/etc/squid/acl/ips_liberados.conf"
http_access allow ips_liberados
Reparem que nesta acl estou liberando os IPs da diretoria para acessar tudo, por isso o comando "http_access allow ips_liberados".
Vamos criar uma acl sem ter que criar outro arquivo, ditando a regra dentro do arquivo de configuração do Squid. Exemplo:
#Acl para bloquear download
acl download urlpath_regex .pps$ .com$ .pif$ .bat$ .asfv1$ .wmv$ .mp3$ .avi$ .msi$ .asf$
acl streaming urlpath_regex -i \.asf$ \.asx$ \.avi$ \.au$ \.mid \.midi$ .\asfv1$ \.wav$
http_access deny download
http_access deny streaming
Assim não precisamos criar o arquivo download em qualquer outra pasta do nosso software Squid. Acima estamos bloqueando downloads do tipo wmv, avi, msi, asf e também vídeos do tipo midi, wav, esses são os mais comuns, lembrando que depois de editar as regras temos que liberar o acesso com o comando deny para negar ou allow para liberar, e a regra http_access é para conteúdo dentro do seu navegador, telnet ou ftp e afins.
Vamos agora entender os comandos do Squid.
# squid -k reconfigure
Carregar alterações no squid.conf ou ACL, execute sempre que fizer alterações no squid.conf ou ACL.
# squid -k shutdown
Parar o serviço, derrubar o Squid, prefira esta opção em lugar de outras semelhantes como "service squid stop" ou "rcsquid stop".
Referência:
http://www.zago.eti.br/squid/dicas-e-truques.html
Conclusão:
As ACLs não são nenhum bicho de sete cabeças, nada no
Linux é um bicho de sete cabeças, tudo é questão de para que serve, como funciona, como ativa ou libera. Às vezes é mais fácil ver um erro na linha de comando do que tentar adivinhar um erro com um mouse.
Obrigado amigos e até breve.