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