[FONT="Tahoma"][SIZE="2"][SIZE="1"]Quick HOWTO
Autenticação Squid usando NCSA
Você pode configurar o Squid para mostar um prompt
com nome de usuario e senha para acessar determinado
conteúdo na internet. Squid vem com um programa chamado
ncsa_auth que lê toda senha criptografada compilado do NCSA.
Você usa o programa htpasswd que vem instalado com Apache
para criar as senhas dos usuarios.
Da tática à prática:
1) Criar um arquivo que contenha usuarios e senhas. O nome do
arquivo pode ser e estar assim: /etc/squid/ncsa_userpass, você
precissa criar o arquivo e definir as permissoes.
[root@root]# touch /etc/squid/ncsa_userpass
[root@root]# chmod o+r /etc/squid/ncsa_userpass
2) Use o programa htpasswd para adicionar usuarios e senha no
arquivo(userpass). Você pode adicionar usuarios a quaquer hora
sem precissar reiniciar o Squid. Nesse caso, você vai adicionar um
usuario chamado userauth:
[root@root]# htpasswd /etc/squid/ncsa_usepass userauth
[root@root]# New password:
Re-type new password:
Adding password for user userauth
3) Localizando seu ncsa_auth usando o comando rpm.
[root@root]# rpm -ql squid | grep ncsa
/usr/lib/squid/ncsa_auth
4) Edite squid.conf especificado, você precissa definir o program
de autenticaçao no squid.conf, que nesse caso é ncsa_auth.
Proximo, crie uma ACL como o nome de ncsa_auth com o parametro
REQUIRED no qual força o Squid a usar o NCSA auth_param metodo
que você definiu previamente.
Finalmente criar um http_acccess abilitando(allow) a entrada do
trafico ncsa_auth na entrada ACL. Aqui uma simples exemplo de
autenticaçao de usuario, a ordem dos regras é importante:
#
# Add this to the auth_param section of squid.conf
#Aqui e definido o programa de autenticacao e o arquivo que
#contem o usuario e senha (criptografado).
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_userpass
#
# Add this to the bottom of the ACL section of squid.conf
# Adicionando uma ACL é informando que a autenticacao por
#proxy vai ser requerida.
acl ncsa_users proxy_auth REQUIRED
#
# Add this at the top of the http_access section of squid.conf
# Informa que abilita ou tem acesso, apenas usuarios autenticados.
http_access allow ncsa_users
Configuramos para requerer autenticaçao por senha e abilitamos
para acesso.Reiniciar o Squid para que as alteraçoes tenham efeito.
Autenticados e Liberados
Caso exista uma lista de sites/IPs ao qual voce nao necessite
bloquear entao podemos criar regra de liberados, simples assim :
acl SITES_AUTH proxy_auth REQUIRED "/etc/squid/content_rules/SITES_AUTH"
acl SITES_LIBERADOS url_regex -i "/etc/squid/content_rules/SITES_LIBERADOS"
http_access allow SITES_LIBERADOS
http_access allow SITES_AUTH
Configuramos para requerer autenticaçao por senha e abilitamos
para acesso sem autenticacao. Outra vez, a ordem das regras é
fator importante e relembrando reiniciar o Squid para que as
alteraçoes tenham efeito. :)
Esse documento pode ser distribuido livremente, pode ser
alterado para melhoria e inclusao de conteudo que nao fuja
do escopo e da ideia principal. Be Free.[/SIZE][/SIZE][/FONT]