Nesse tutorial mostrarei como fazer a configuração do Squid com autenticação ncsa_auth (quando você abrir o browser na máquina cliente será pedido para que digite usuário e senha). Tive um certo trabalho para conseguir chegar à essa configuração, mas no final tudo funcionou sem problemas.
Controle de acesso a internet com SQUID e autenticação ncsa_auth
A distribuição que usei para fazer esse tutorial foi o Mandriva 2006, não testei em outras, mas possivelmente funcionará tranqüilamente.
Requisitos necessários:
Internet compartilhada com os outros computadores da rede;
Mandriva 2006 instalado com servidor.
Primeiro vamos instalar o SQUID 2.5 STABLE completo (usarei a instalação por URPMI, pois foi uma maneira mais fácil que encontrei e se saiu muito bem).
Digite no terminal como root (tudo será executado como root para evitar problemas de acesso):
# urpmi squid
Feita a instalação, vamos à configuração. Primeiro temos que copiar o arquivo ncsa_auth para pasta lib. Este arquivo é o responsável pela autenticação:
# cp /etc/squid/ncsa_auth /usr/bin/ncsa_auth
Feito a cópia podemos começar a criar os arquivos que serão necessários para o nosso SQUID:
proibidos - aqui serão guardados os nomes dos usuários que terão seus acessos restritos;
acetotal - aqui serão guardados os nomes dos usuário que terão acesso total, sem as restrições (normalmente serão os patrões, gerentes e malas : ) );
restrito - aqui serão guardados as palavras que terão acesso restrito (notem que disse palavra e não a URL completa);
excecoes - aqui serão guardadas as palavras de exceções, se por exemplo você bloqueou a palavra sexo, o usuário não poderá acessar o site sexo e saúde, portanto terá que ser colocado em exceções a palavra "sexoesaude" para que se possa acessar este site.
Depois de criados os arquivos, será necessária a configuração do squid.conf, arquivo que guarda as configurações do que o SQUID deve ou não fazer.
Vamos colocar o squid.conf existente com outro nome para que possamos criar um novo, que é mais fácil do que re-digitar e não corremos o risco de não dar certo. Se não funcionar é só voltar o antigo para o lugar.
[7] Comentário enviado por mascarijunior em 26/08/2006 - 11:13h
E aiii Cabelo, fiz aqui a config do meu squid.conf de acordo com seu artigo, fiz algumas alterações e complementei com algumas coisas ficou muito bom mesmo hein, falow pessoal
[9] Comentário enviado por NelsonMatrix em 16/09/2006 - 15:19h
Ola cabelo, me de uma ajuda, configurei como vc passou, no inicio até funcionou, mas eu não tinha configurado o compartilhamento de internet, depois configurei o compartilhamento com um nat, agora não consigo iniciar o squid, pode me dar uma mãozinha?
[10] Comentário enviado por _cabelo_ em 19/09/2006 - 15:22h
ai nelson provavelmente vc vai ter q fazer as configs do squid de novo eu tb fiz isso ja e dai eu tive que fazer as configs do squid novamente é sócopiar e colar o conteudo ou se tiver um q vc fez é só dar um "mv seu back-up /etc/squid" ele vai perguntar se deseja sobrescrever e é so sobrescrever e pronto pode iniciar
[11] Comentário enviado por neto80 em 13/10/2006 - 17:32h
Cabelo meu brother ! muito obrigado, seu artigo foi super facil de entender, adorei..
agora to com uns probleminhas aqui
quando eu tento logar algum usuario na tela de autenticação ele nao loga, olhando o log do squid ele ta bloqueando o meu ip... o que podera ser?
te add no msn OK?
[14] Comentário enviado por osvaldojr em 12/12/2006 - 10:41h
Parabéns, meu amigo estou começando agora em Linux e com este tutorial ficou claro e simples, mas tive um problema que ainda não consigo solucionar , todos os usuarios que não estão com acesso total não conseguem navegar ou melhor nem logar, sem acesso ao cache. O que seria isso .. Muito obrigado
[15] Comentário enviado por firedelphi em 10/01/2007 - 17:59h
Parabéns, eu só nao entendi uma coisa
#acl que controla o acesso por usuários
acl restrito proxy_auth "/etc/squid/restrito" (esta aqui esta autenticando o arquivo de palavras nao o usuarios que está no proibido)
acl proibidos url_regex "/etc/squid/proibidos" (esta aqui está bloqueando as urls com usuarios)
[16] Comentário enviado por robson..pba em 20/04/2007 - 16:48h
Cabelo Parabens pelo seu artigo, gostaria de falar que tenho um firewall com squid em dois clientes com base em seu artigo, eles ja estão rodando a uns 3 meses, porém surgim uma alteração ser feita.
Em uma empresa preciso centralizar o acesso de um unico computador com windows 2003 server e com autenticação de usuário, porém o Chefão que é quem esta no 2003 não quer que aparece para ele ter que autenticar e quer que os funcionarios que estiverem conectados na maquina dele via terminal service apareça a opção de autenticação.
Pelo pouco que entendi de squid, acho que isso não pode ser feito nesse caso, pois todas as conexões saem do mesmo ip do terminal service.
E o squid contrala por ip ou por usuário, meu pensamento esta correto?
[17] Comentário enviado por vbiava em 17/05/2007 - 11:23h
E ai blz de artigo..
Mas cara sou novo no ramo do linux e não estou conseguindo altenticar nem uma máquino com proxy..
Por exemplo em meu servidor que é mandriva 2007 está rodando a Net normalmente, agora quando ativo o PROXY vem uma mensagem dizendo que o proxy esta recusando acesso. o que devo fazer....
[19] Comentário enviado por flaviog em 30/04/2013 - 10:21h
Muito bom seu artigo.
Tenho um duvida se vc puder me ajudar.
Atualizei meu squid para a versao 3.2.
Usei o squid.conf que ja tinha da vesao anterior. Na linha que faz referencia a autenticação Teve uma mudança no nome do programa de autenticação.
na versao anterior: auth_param basic program /usr/lib64/squid/ncsa_auth /etc/squid/usuarios_squid
na nova versao.....: auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/usuarios_ori
Ate ai tudo bem. O que esta pegando e ainda nao consegui econtrar e esta causando o problema é que ele nao loga se a senha ultrapassar 8 catacterer, ou seja, se eu cadastrar um usuario com a senha: 1234567890 nao loga de jeito nenhum. Ja olhei as configurações tanto do squid.conf quanto a configuração do apache tambem. E nao encontrei nada de anormal que esta causando isso. E na versao anterior logava normal.