Proxy com autenticação no AD

1. Proxy com autenticação no AD

renato
relofi

(usa Debian)

Enviado em 02/04/2008 - 16:11h

Boa tarde gente, estou com uma dúvida de iniciante que acredito ser sanada por vocês facilmente.É o seguinte, tenho configurado e rodando um squid com autenticação no AD utilizando o winbind.Criei dois grupos um com acesso full (liberado tudo) e outro acesso restrito (bloqueado por palavras ou sites).
Acontece que para isso preciso cadastrar a maioria dos meus usuarios da rede no acesso restrito, dando um trabalho a mais toda hora que um usuario novo é criado.Gostaria de saber se não há a possibilidade de eu não precisar adicionar esse usuário restrito em lista nenhuma, só adiciono ele no AD e já está funcionado como acesso restrito.
Meu squid.conf:

auth_param basic children 50
auth_param basic realm Servidor Proxy
auth_param basic credentialsttl 4 year
auth_param ntlm program /usr/lib/squid/ntlm_auth -d domain.com/server
auth_param ntlm children 50
acl lan src 10.33.3.0/24
acl usuario.full proxy_auth "/etc/squid/usuario.full.txt"
acl usuario.restrito proxy_auth "/etc/squid/usuario.restrito.txt"
acl site url_regex -i "/etc/squid/site.restrito.txt"
#http_access allow lan
http_access allow usuario.full
http_access deny usuario.restrito site
http_access allow usuario.restrito



  


2. Re: Proxy com autenticação no AD

Fernando R. Durso
fernandord

(usa Ubuntu)

Enviado em 02/04/2008 - 17:40h

Eu faço utilizando o squid_ldap_auth que não vem com o squid, pelo menos no do Debian não vem... experimentei o winbind mas ele não conseguia distinguir os grupos...

inicialmente voce baixa o source do squid:

apt-get source squid
e as dependencias:

apt-get build-dep squid

depois entra nos source e digita:

./configure --enable-basic-auth-helpers="list of helpers"

depois:

make

depois é só copiar o executável squid_ldap_auth do source que estará no diretório:
helpers/basic_auth/LDAP
para o diretório /usr/lib/squid/

feito isso é só seguir com as configurações....

Segue a minha configuração de exemplo:

auth_param basic program /usr/lib/squid/squid_ldap_auth -R -b "dc=dominio,dc=local" -D "cn=proxy_user,ou=Internet,dc=dominio,
dc=local" -w "123456" -f sAMAccountName=%s -h 192.168.1.1
auth_param basic realm "Acesso a internet"
auth_param basic children 5
auth_param basic credentialsttl 15 minutes

external_acl_type ldap_group %LOGIN /usr/lib/squid/squid_ldap_group -R -b "dc=dominio,dc=local" -D "cn=proxy_user,ou=Internet
,dc=dominio,dc=local" -w "123456" -f "(&(objectclass=person)(sAMAccountName=%v)(memberof=cn=%a,ou=Internet,dc=dominio,dc=loca
l))" -h 192.168.1.1


acl acessoespecial external ldap_group AcessoEspecial
acl acessopadrao external ldap_group AcessoPadrao

acl palavras_bloqueadas url_regex -i "/etc/squid/configs/palavras_bloqueadas.txt"
acl rede_interna src 192.168.1.0/255.255.255.0


http_access allow rede_interna acessoespecial
http_access deny palavras_bloqueadas
http_access allow rede_interna acessopadrao
http_access deny all


Nessa configuração você terá de ter um AD (192.168.1.1) configurado e rodando, criar uma OU Internet com 2 grupos, AcessoEspecial e AcessoPadrao e dentro dessa OU um usuário Proxy_user com senha 123456

O único incoveniente é que qualquer alteração no AD é necessário rodar um squid -k reconfigure, mas você pode colocar o comando na crontab pra executar de tempos em tempos

t+






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts