Autenticação no Squid em 6 passos
Um cliente proxy se coloca entre o servidor e o
cliente de rede, gerenciando o tráfego de informações
entre ambos. Seu uso mais frequente em redes seria quando os computadores
de rede não têm acesso direto à internet, mas podem
contar com um servidor de comunicação que tem este
acesso. Neste caso, uma das soluções possiveis é
a instalação de um Servidor Proxy no computador,
que dá acesso à internet, para servir de intermediário
entre os navegadores instalados junto a rede e os servidores web
da internet.
O Squid é um dos softwares mais utilizados
como servidor proxy de web e FTP para o sistema operacional Linux.
O software é incluido na maior parte das distribuições
Linux, e você também pode procurar versões
mais atualizadas no site oficial http://www.squid-cache.org/,
juntamente com uma excelente documentação.
Passos para configuração do Squid
É muito importante que os usuários
internos naveguem na internet,e ao mesmo tempo é interessante
que o acesso seja controlado, ou seja, tenha que passar por uma
deteminada autenticação. Essa autenticação
é designada por "usuário e senha", onde
o mesmo serrá definido no Servidor Linux que contém
o Squid instalado.
Neste tutorial, usamos o Squid-2.3STABLE4-10, mas
nada impede que seja versões anteriores, ou posteriores.
Obs.: O Squid já tem que ter sido configurado
para fazer cache de
páginas simples.
Passo 01
Editar o script de configuração do
Squid:
# vi /etc/squid/squid.conf
Passo 02
Procurar as seguintes linhas:
# authenticate_program /urs/bin/ncsa_auth
/usr/
etc/passwd#
# authenticate_program
none
As linhas estão comentadas, deve-se descomentar
a linha e fazer com que ela fique da seguinte maneira:
authenticate_program /urs/bin/ncsa_auth
/etc/
squid/passwd
Está linha indica, quem vai ser o responsável
por chamar a autenticação (ncsa_auth) e qual vai
ser o arquivo que vai conter os usuáriso e as senhas (/etc/squid/passwd).
O comando ncsa_auth, não existe no diretório que
foi mostrado, devemos localiza-lo agora com o comando:
# locate ncsa_auth
meu resultado foi:
/usr/lib/squid/ncsa_auth
pode-se utilizar também o comando:
find / -name squid_auth
Lembrando que a localização deste
arquivo pode ser diferente, dependendo
de sua distribuição Linux.
Devemos copiar este arquivo para /usr/bin com o
comando:
# cp /usr/lib/squid/ncsa_auth /usr/bin
Passo 03
Definir qual a ACL (Access Control List), que vai
ser responsável
pelo controle de autenticação, como no exemplo abaixo:
# acl password proxy_auth REQUIRED
Deve se descomentar está linha e fazer com
que ela fique da seguinte maneira:
acl password proxy_auth
"/etc/squid/usuarios"
Está linha é responsavel por indicar
qual vai ser o arquivo de usuários, que vai conter as senhas,
foi criada por um ACL, cujo o tipo é "proxy_auth".
Agora devemos criar este arquivo, e dentro dele colocar os usuários
que vão ter
autenticação.
# vi /etc/squid/usuarios
drusian
fabiano
linus
Passo 04
Habilitar o uso da ACL criada, fazendo assim com
que todos que passem pelo Squid, e quem estiver no arquivo de
usuários, utilizem para acesso, um "usuário
e senha" adicionando a linha abaixo:
http_access allow password
http_access deny all
Está linha indica que eu aceito o password
(http_acces allow password) e nego todo outro tipo de acesso (http_access
deny all).
Passo 05
Após definido tudo isso temos que criar
os usuários e as senhas, este iten se refere ao arquivo
que tem que existir no /etc/squid/passwd , um detalhe importante
é que ele não pode ser criado por um editor de textos,
mas sim com o comando: htpasswd, como no exemplo:
htpasswd -c /etc/squid/passwd linus
passwd linus
New password:
Re-type new password:
Adding password for user linus
Nota-se que este comando cria o arquivo /etc/squid/passwd
mediante ao parametro "-c" com o usuário linus
e com a senha que desejar. Se for preciso criar mais de um usuário
a opção "-c" deve ser retirado como no
exemplo:
htpasswd /etc/squid/passwd drusian
passwd drusian
New password:
Re-type new password:
Adding password for user drusian
Passo 06
Pronto está tudo preparado, só falta
colocar para funcionar. Este passo tem a finalidade
de reler o script de configuração do Squid, e ativar
as mudanças, para isso existe duas
maneira de fazer:
# /etc/init.d/squid restart
ou
# squid -k reconfigure






