Para restringir determinados usuários.
Autenticando usuários
É comum os administradores restringirem o acesso ao Proxy
aos seus clientes. Para isto, pode-se pedir usuário e senha
ao usuário para poder navegar utilizando o Proxy. Este
serviço é feito pelo
autenthicate_program (programa autenticador). O pacote do squid
inclui um programa autenticador chamado
ncsa_auth , o qual utiliza arquivos de senhas no formato
htpasswd do Apache. Pode-se utilizar algum outro programa, se
quiser. O executável do ncsa_auth está no
diretório
/usr/doc/squid-versão. É preferível
copiá-lo para um diretório de arquivos
binários (/usr/bin por exemplo).
Uma linha típica de configuração seria:
autenthicate_program /usr/bin/ncsa_auth
/etc/squid/squid_passwd
|
O arquivo /etc/squid/squid_passwd deve
ser criado com o comando htpasswd:
[root@localhost]# htpasswd -c /etc/squid/squid_passwd usuario1
|
Para atualizar o arquivo de senhas utilize apenas:
[root@localhost]# htpasswd /etc/squid_passwd usuario2
|
Se você utilizar o ncsa_auth (ou algum outro
autenticador), deve existir uma access list (lista de acesso) do
tipo proxy_auth para permitir ou não o acesso.
Na seção das acls (acess list) vamos definir a acl
referente ao controle dos usuários ao proxy.
acl password proxy_auth REQUIRED
|
Password é o nome da access list, a access list é
do tipo proxy_auth (autenticação de usuários).
O campo REQUIRED informa ao squid para procurar o nome/senha do
usuário com todos os nomes/senhas existentes no arquivo /etc/squid/squid_passwd, descrito
anteriormente. Pode-se também colocar um a um os nomes de
usuários a ser procurados no arquivo
squid_passwd, em vez do campo REQUIRED.
Agora para informar ao squid se o acesso a ela será ou
não permitido, devemos incluir a seguinte linha na
seção http_access:
Para restringir o acesso apenas a usuários do seu
sistema, você pode inserir a seguinte
instrução:
http_access allow password
|
Isso vai exigir que os usuários forneçam uma senha
para que possam utilizar o proxy.
Nota: A ordem dessas regras é
importante, você deve colocá-las na mesma ordem em que
foram apresentadas nesta seção.
Restringindo máquinas.
Enfim o bloqueio pode ser ainda por máquinas
específicas. Digamos que você queira bloquear os IPs
192.168.0.1 e 192.168.0.2, utilize a seguinte regra.
acl proibir_ip src 192.168.0.1 192.168.0.2
http_access deny proibir_ip
|
Nota: Após incluir qualquer uma das regras acima,
não se esqueça de incluir regras especificando que
tudo o que não estiver restringido, deve ser permitido.
Se ainda não tiver especificado uma regra para permitir
acesso a toda sua rede, você deverá informar a
seguinte regra:
acl minha_rede_local src 192.168.0.0/255.255.255.0
http_access allow all minha_rede_local
|
Substituindo 192.168.0.0/255.255.255.0 pelo endereço e
máscara de sua rede.
Após concluir as restrições de acesso,
precisamos ativar as mudanças.
[root@localhost]# cds
[root@localhost]# ./squid stop
[root@localhost]# ./squid start
|