Ayuda con squidguard y grupos del AD
-
Buenos dias
He definido un common acl que por defecto deniegue todo, luego he creado un group acl para que permita ciertas categorias a usuarios que pertenecen a un grupo de AD.
Segun squidguard, la cadena que se tiene que usar es esta:
ldapusersearch ldap://192.168.0.100/DC=domain,DC=com?sAMAccountName?sub?(&(sAMAccountName=%s)(memberOf=CN=it%2cCN=Users%2cDC=domain%2cDC=com))
Yo la he definido con mis configuraciones:
ldapusersearch ldap://XXX.XXX.XXX.XXX/DC=XXX,DC=XX?sAMAccountName?sub?(&(sAMAccountName=%s)(memberOf=CN=GOEradius-AdminRedes%2cOU=Radius%2cOU=Otros%2cOU=Grupos%2cDC=XXX%2cDC=XX))
Donde pone XXX son los datos de mi DC.
Con esa configuración no me permite el acceso, se queda en la default de common ACL. Es como si no fuera capaz de validar el grupo.
He probado también ha poner un "%2D" para sustituir el "-" en CN=GOEradius-AdminRedes y tampoco.
Un saludo.
-
Ten en cuenta esto primero.
Al integrar squidguard y squid, debes saber que squid se encargara de 2 funciones principales (entre otras):
- Autenticar al usuario.
- Permitir pasar por IP (al que no quieres que le pida usuario y clave, ej: servidores)
- Cache.
Esto quiere decir que la definición de los grupos, usuarios, ip, sera netamente responsabilidad del squidguard (políticas de navegación)
Entonces, como mejor practica, la common ACL del Squidguard, yo la coloco deny por defecto y no permito nada. Para que? para que usuario que no este registrado en algún grupo de LDAP o PC que no este registrada a Nivel de IP, no navegara así tenga el proxy configurado. Solo es util la common ACL para permitir paginas internas (intranet, paginas web, correo etc)
Con lo anterior expuesto, entonces debes saber que necesitaras una Grupo ACL en el SquidGuard pero por IP, esto con la finalidad de agregar aquellas Ip preferiblemente de servidores y las IP de los PC de usuarios que tu quieres que pasen por el proxy pero que no les pida usuario y clave, esto no quiere decir que al no pedirle autenticación van a navegar libre, igual tu le defines a que categorías tendrán acceso. Esta acl por IP la recomiendo para servidores como para usuarios elevados por ej: el presidente o dueño de la empresa.
A) Buen, veo que ya autenticas el SQUID con el AD, ahora solo te falta el SquidGuard. Bien lo primero es que el usuario que usas para autenticar en el LDAP, trata de que sea un usuario sin apellidos (lastname) ya que SquidGuard no usa el ID sino el CN , mi id puede ser por ej: jlopez, pero mi CN es "Jose Lopez", squidguard lee es el CN, entonces recomiendo que te crees un usuario llamado por ej: proxy y que no tenga apellido, de esta forma su CN sera solo: proxy.
B) La clave o password: Squidguard recomienda (lo puedes ver en el apartado de password de usuario ldap) que la clave del usuario que va a usar el squidguard, empiece por letras, de hecho tienes un ejemplo donde se coloca: Change123 entonces, trata de usar algo parecido. OJO, no son los usuarios en general, es la clave del usuario lectura, en este caso el usuario proxy y trata de no usar en la clave caracteres especiales.
C) El puerto del LDAP, Sea OpenLDAP o sea AD, sabemos que por defecto pensamos en el 389, pero te recomiendo que utilices el puerto 3268 y aqui te explican por que (cuando es AD): http://www.squidguard.org/Doc/ldap-ad-tips.html
D) Te pongo un ejemplo de mi Query AD que utilizo actualmente:
ldapusersearch ldap://192.168.0.55:3268/DC=farmacia,DC=net?sAMAccountName?sub?(&(sAMAccountName=%s)(memberOf=CN=LIB%2cCN=Users%2cDC=farmacia%2cDC=net))
En este caso: cree un grupo llamado LIB dentro de la OU Users dentro del domino: DC=farmacia,DC=net (farmacia.net)
Si usas dento de usuarios una OU llamada: Grupos_Internet, solo debes separar con: %2c
Trata de no usar espacios en los grupos llamalos por ej: nivel1 nivel2 nivel3 nivel4 etc por ej.
Del resto todo debe funcionarte sin problemas.
Esto lo he probado tanto en Directorio Activo como en Samba4 (Zentyal, Nethserver) como en OpenLDAP.
Saludos.
-
Hola,
Muchas gracias por la clase magistral de configuracion.
Cumplo todos los requisitos que comentas, tanto a nivel de validacion como de configuracion.
El common ACL lo tengo como deny para que sean la Groups ACL las que permitan segun el permiso que tenga el usuario (pertenencia a un grupo)
Aun teniendo configurada la cadena LDAP en el Group ACL del squidguard, me sigue filtrando por la default. Si en el group ACL pongo la IP de mi puesto, si funciona, pero era solo para descartar algun problema de configuracion.
He creado otro grupo dentro de la misma OU por si fuera el problema del "-" pero el resultado es el mismo.
ldapusersearch ldap://dominio:3268/dc=grupogss,dc=corp?sAMAccountName?sub?(&(sAMAccountName=%s)(memberof=CN=GOEsquid%2cOU=Radius%2cOU=Otros%2cOU=Grupos%2cDC=dominio%2cDC=corp))
El error del navegador:
ACCESO RESTRINGIDO: 403 Forbidden ; Reason: Client address: 10.100.31.174 Client name: 10.100.31.174 Client user: djimenez Client group: default Target group: none URL: http://www.google.es/
Mi DC es un windows 2008 server R2, por si tuviera que instalar algo especial.
Un saludo.
-
Confirmaste (en la entrada en texto plano) que tus objetos
OU=Radius,OU=Otros,OU=Grupos
Sean OU o CN?
Para que descartes que sea: CN=Radius,CN=Otros,CN=Grupos
-
Buenas,
No te preocupes j.sejo1 ya he solucionado el problema. Arrastraba muchas configuracion y he decido restaurar valores de fabrica y empezar de 0. Ya me funciona todo correctamente.
Lo que tengo que buscar ahora es alguna forma de que no salga la ventana de introducir credenciales y use las del sistema, ntlm, kerberos o lo que permita pfsense, pero no encuentro mucha informacion.
Un saludo.
-
Para que no pida autenticación es el proxy squid con soporte NTLM, pero solo aplica en estaciones con s/o Windows y que estén en el dominio.
Yo lo he usado pero en Linux Debian (Squid + Samba + Winbind) En algunos casos se puede usar Kerberos.
Pfsense al ser un FreeBSD lo puedes hacer (instalar samba y winbind). Pero por su interfaz web no lo podrás hacer.
Lee esto: https://pf2ad.mundounix.com.br
-
Buenas tardes,
POR FIN! ya tengo todo lo que necesito. He conseguido hacerlo con pf2ad.
Gracias por todo