[CentOS-es] Internet con Squid por medio de Ldap

Carlos Moreira carlos.moreira en imcanelones.gub.uy
Jue Jul 17 16:53:33 UTC 2008


 Bueno, te cuento algunos avances...
1º- la parte d ela autenticacion, esta funcionando bien,
si ejecuto lo siguiente:
/usr/lib/squid/squid_ldap_auth -b "ou=users,dc=imcanelones,dc=gub,dc=uy" 
-h 10.1.1.25 -f uid=carlos.moreira
-w micontraseña
OK
Asi que me esta autenticando sin problemas,

despues cuando ejecuto el script de la autenticacion de grupo tengo lo 
siguiente tambien
/usr/lib/squid/squid_ldap_group -P -b 
"cn=Internet,ou=Groups,dc=imcanelones,dc=gub,dc=uy" -f 
memberuid=carlos.moreira -B "ou=users,dc=imcanelones,dc=gub,dc=uy" -F 
uid=carlos.moreira -h 10.1.1.25
-w micontraseña
OK
por lo que puedo inferir que tambien estoy autenticando bien la 
pertenencia al grupo


El problema es cuando llevo esto al squid.conf

el primero, descarto que tenga problemas, porque solito funciona bien.
el tema es con lo del grupo
esto es lo que tengo escrito:
external_acl_type ldap_group children=7 %LOGIN 
/usr/lib/squid/squid_ldap_group -P -b 
"cn=Internet,ou=Groups,dc=imcanelones,dc=gub,dc=uy" -f (memberuid=%s) -B 
"ou=users,dc=imcanelones,dc=gub,dc=uy" -F (uid=%s) -h 10.1.1.25

acl lan src 10.1.1.0/255.255.255.0
acl internet_users external ldap_group


http_access deny !internet_users
http_access allow lan password

Si yo comento http_access deny !internet_users puedo salir a internet 
sin problemas autenticandome con cualquier usuario de ldap, pero si dejo 
descomentada esa linea, no hay usuario de ldap que me permita salir.


O. T. Suarez escribió:
> Hola:
>
>   
>>  ok, el tema es que no se en que parte del squid tengo que decirle que para
>> acceder al ldap lo tiene que hacer por ejemplo con el usuario
>> cn=admin,dc=imcanelones,dc=gub,dc=uy y alguna contraseña,
>> para que pueda tener permisos.
>>     
> La verdad, no he tenido tiempo de buscar la documentacion del modulo,
> el fin de semana si todavia no has resuelto el problema, googleo un
> poco a ver si te puedo ayudar con algo mas concreto.
> Si no sabes donde decirselo al squid, lo mas probable es que lo este
> tomando del fichero ldap.conf (man ldap.conf te responde algo?, no
> tengo ldap instalado en mi maquina ahora).
>
> Pero que te quede claro algo, el squid, o en este caso, el
> authenticacion helper, no es mas que un cliente que accede al arbol
> ldap, y como tal, tendra acceso a aquellas partes del arbol que tiene
> permisos.
>
>   
>>  En realidad creo que mi base de busqueda es
>> ou=users,dc=imcanelones,dc=gub,dc=uy
>>  porque es ahi donde tengo los usuarios, debajo de
>> ou=Groups,dc=imcanelones,dc=gub,dc=uy tengo muchos cn que
>> son grupos, entre ellos uno que se llama Internet donde estan escrito  los
>> usuarios que quiero que accedan a internet
>>     
> Estamos de acuerdo que el squid va a autenticar a los usuarios con su
> nombre/contrasenna tal como estan en ou=users, pero la pertenecencia
> al grupo la tiene que sacar de algun lado no? por eso ...
> ok, vamos a googlear...
> primero la pagina man
> http://linux.die.net/man/8/squid_ldap_auth
>
> de ahi veo que pudiera ser algo vagamente similar a:
> squid_ldap_auth -P -R -b "dc=your,dc=domain" -D
> "cn=squid,ou=users,dc=imcanelones,dc=gub,dc=uy" -w
> "secretsquidpassword" -f
> "(&(memberof=ou=Groups,dc=imcanelones,dc=gub,dc=uy)(objectClass=Person))"
> ldapserver
> donde en el directorio ldap tendrias un usuario llamado squid con
> passwd secretsquidpassword.
> Necesita un usuario para loguearte en el directorio ldap y hacer las busquedas.
> como probar el authentication helper desde la linea de comando:
> http://www.cyberciti.biz/tips/howto-configure-squid-ldap-authentication.html
> ejemplo de uso de grupos:
> http://www.papercut.com/kb/Main/ConfiguringSquidProxyToAuthenticateWithActiveDirectory
> tirale un vistazo a este thread
> http://www.mail-archive.com/squid-users@squid-cache.org/msg33711.html
> y a este
> http://www.squid-cache.org/mail-archive/squid-users/200404/0140.html
> esta version esta vieja ya pero fijate
> http://group-ldap-auth.sourceforge.net/squid/group_ldap_auth/index.html
> te hablan de dos lineas en la configuracion del squid...
> una para el programa como tal que utilizas de authentication helper:
> 	ldap_auth_program /usr/local/squid/bin/group_ldap_auth o=siroe.com \
> 	  ldap.siroe.com 389
> y la otra para que el squid lo utilice como acl:
> To tell squid to use ldap_auth, use the ldap_auth acl directive:
> 	acl aclname ldap_auth (((static | dynamic) group) | username) ...
> Espero que algo de esto te sirva.
> Saludos
> Osvaldo
>
>
>   


Más información sobre la lista de distribución CentOS-es