Integrando Squid Con LDAP

Bueno en la entrada anterior les mostré que es Squid, Dansguardian y su configuración, ahora les voy a mostrar como se integra con usuarios en una base de datos LDAP.

Requerimientos previos:

Ahora contamos con un cliente, un servidor DNS y una base de datos con 2 usuarios LDAP, si necesitan información sobre como hacer estas configuraciones les recomiendo visitar los siguientes enlaces.

Luego de cumplir con los requerimientos básicos procederemos a verificar los usuarios en LDAP, lo único que deben tener es un uid y un password, en mi caso tengo estos dos usuarios para realizar la prueba.


Cuando descargamos squid el viene con un demonio para la autenticación de ldap, generalmente queda en /usr/lib64/squid/squid_ldap_auth pero en algunas distribuciones puede quedar en otros lugares por ejemplo /usr/lib/squid/squid_ldap_au, ahora valiéndonos de este verificaremos que el Squid sea capaz de comunicarse con ldap, utilizaremos el comando

/usr/lib64/squid/squid_ldap_auth -b "dc=gnunick,dc=com" -f "uid=%s" ldap.gnunick.com
  
Al final deberán escribir el nombre de uno de los usuarios de ldap y su respectiva contraseña separados de un espacio y les deberá devolver un OK, si es así significa que ldap y squid son capaz de comunicarse.

Ahora en el archivo /etc/squid/squid.conf descomentaremos y editaremos la siguiente linea. 

auth_param basic program   /usr/lib64/squid/squid_ldap_auth -b "dc=gnunick,dc=com" -f "uid=%s" -h ldap.gnunick.com


Nota: En los 2 ejemplos anteriores deben cambiar "dc=(su dominio)dc=com y el en vez de ldap.gnunick.com pueden poner su IP o un registro A que apunte a esta.
 

Al final del archivo deberán agregar estas lineas.


Ahora saldremos y reiniciaremos el Squid.


Desde un cliente con el proxy ya configurado intentaremos conectarnos y deberá apareces un cuadro de autenticación, ahora introducimos un usuario y contraseña de LDAP y el ingreso deberá ser satisfactorio.


Nota: Deben verificar bien que la sintaxis sea la correcta, ya que cualquier error puede llegar a causar serios dolores de cabeza, en mi caso la autenticación fallaba y cuando verificaba los logs me aparecía este error.



1307995079.934     22 192.168.1.10 TCP_DENIED/407 1806 GET http://dominio.com/ calde NONE/- text/html

Lo que parecía pasar era que el usuario era reconocido pero la contraseña aparece NONE, esto se debía a un error en las lineas del squid.conf así que ténganlo muy presente, cualquier duda me escriben ;)

Si has encontrado útil este artículo puedes compartirlo desde tu blog, página Web o foro.




0 comentarios:

Publicar un comentario

 
Licencia Creative Commons
Este obra está bajo una licencia Creative Commons Atribución-NoComercial-SinDerivadas 2.5 Colombia.