Ayuda con ACL de SquidGuard con Ldap.



  • Buenas a todos!!

    Surgió hace unas semanas la necesidad de generar reglas de SquidGuard por intermedio de usuarios de Active Directory.

    Hoy tenemos configurado Squid de modo Transparente con SSL Man In the Middle Filtering como Splice All, esto nos da la posibiliad de generar filtros y reportes de paginas Https en las terminales pero siempre por Ip.
    La autenticacion de Squid no esta habilitada ya que este se encuentra en modo transparente.

    La idea entonces es poder generar reglas o filtros por intermedio de SquidGuard pero que apliquen a ciertos usuarios de Active Directory pero no he podido dar con el clavo!!!
    Esta configurado creo de forma correcta, Instale Samba y autentica, pfsense ve los grupos y Ou de AD pero no me toma las reglas de SquidGuard.

    Ya a esta altura sospecho que es porque no acepta filtros por intermedio de AD si Squid no esta autenticado y de forma No Transparente pero no lo se definitivamente.

    Algunos Datos.

    Squid: Configurado Transparente - Ssl Filtering Habilitado en modo Splice All.

    SquidGuard: configurado para autenticar contra ldap (AD) y una regla generada para obviar a ciertos usuarios para que puedan navegar libremente.

    Esta es la regla que he creado y configurado en SquidGuard:

    ldapusersearch ldap://IP:3268/DC=xxxxxxx%2cDC=local?sAMAccountName?sub?(&(sAMAccountName=%s)(memberOf=CN=impulso%2cCN=Users%2cDC=xxxxxxx%2cDC=local))

    Lo he probado con el puerto 389, con el 3268, sin puerto y con el nombre de servidor, como servidor.dominio, etc…

    Ya no se que mas probar y es por eso que escribo el post.

    Por otro lado he probado la autenticacion Firewall - Active directory y funciona correctamente, lo he hecho con el siguiente comando desde la consola de pfsense:

    /usr/local/libexec/squid/basic_ldap_auth -v 3 -b dc=xxxxxxxxxx,dc=local -D cn=pfsense,ou=usuarios,dc=dominio,dc=local -w XXXXXX-f "sAMAccountName=%s" -u uid -P Dir-IP:389

    De la unica forma que me ha tomado la regla es definiendo Squid como No Transparente y activando la Autenticacion de Active directory en Squid, de esa forma me pide autenticacion en el Navegador y la regla funciona a la perfección.

    Desde ya muchas gracias !!!



  • Regla:

    Squid transparente => No Autentica.

    Squid NO Transparente => Si Autentica.

    Squid autentica y le pasa el usuario a Squidguard para que lo busque en que ACL se encuentra.

    En tu caso que es transparente, no te queda mas remedio que hacerlo por IP.

    Saludos.



  • @j.sejo1:

    Regla:

    Squid transparente => No Autentica.

    Squid NO Transparente => Si Autentica.

    Squid autentica y le pasa el usuario a Squidguard para que lo busque en que ACL se encuentra.

    En tu caso que es transparente, no te queda mas remedio que hacerlo por IP.

    Saludos.

    Muchas gracias J.sejo1 por tomarte el tiempo de responder.

    La idea es no autenticar en Squid, la idea es que me tome las reglas creadas en Squidguard y que las aplique por usuario de Active directory.
    Necesariamente tengo que autenticar Squid a Active directory para usar las reglas de SquidGuard y generar Acls que asignen permisos con la configuracion de Ldap?
    Osea pasando en limpio por lo que entiendo es que si no autentico Squid contra active directory las reglas generadas en SquidGuard con ldapusersearch no van a funcionar, por mas que active las opciones de Ldap en SquidGuard!

    Gracias de nuevo.



  • Si es obligado que squid autentique.

    Por que squidguard es solo el programa que te gestiona los grupos y acl a efectos del filtrado de contenido.

    Squidguard recibe de squid bien sea la IP o el Usuario del AD que SQUID le pasa.

    El esquema de conexión es el siguiente

    Petición de usuario <====================> SQUID <======================> SquidGuard

    Pasos:

    1. Usuario envía petición de navegación al proxy
    2. Squid valida si la IP o el usuario (cuando autentica) es permitido. (esto seria solo permiso de aceptación).
    3. Squid le pasa la IP o el Usuario a Squidguard para que este ultimo se encargue de verificar la IP o el Usuario en que Grupo se encuentra.
    4. El acceso es denegado o permitido  de acuerdo a las ACL configuradas.

    Saludos.