Autenticación de la Navegación por Internet
C@mpus - @cademia Linux

Introducción

Squid como la aplicación que proporciona el servicio de Internet en LinuXcangE tiene la capacidad de autenticarse contra un controlador de dominio o un directorio.  De esta forma al tener una discriminante más, se pueden crear reglas tan complejas como evitar que cierto usuario ejecute acciones determinadas sin importar en dónde este físicamente.


Configuración

Las configuraciones tanto para SQuid 2.4 y 2.5 son diferentes, pero sin embargo ambas utilizan los mismos protocolos.  Habrá que añadir las siguientes líneas en el archivo squid.conf que usualmente esta en /etc/squid.

SQuid 2.4
authenticate_program /usr/lib/squid/squid_ldap_auth -b 
    ou=People,dc=linuxchange,dc=com 127.0.0.1
authenticate_children 5
authenticate_ttl 1 hour
authenticate_ip_ttl 60 seconds
proxy_auth_realm LXE Squid proxy-caching web server
acl password proxy_auth REQUIRED
http_access allow password

Squid 2.4 sólo soporta autenticación básica.  Esto, en efectos prácticos, significa que al navegar aparecerá una ventana pidiendo usuario y contraseña.

Afortunadamente, Squid 2.5 soporta autenticación utilizando NTLM.  De estaforma, en equipos firmados dentro del dominio esta será transparente para el usuario.

SQuid 2.5+
auth_param ntlm program /usr/lib/squid/ntlm_auth -b LXE\\TAO
auth_param ntlm children 5
auth_param ntlm max_challenge_reuses 0
auth_param ntlm max_challenge_lifetime 2 minutes
auth_param ntlm use_ntlm_negotiate on

auth_param basic program /usr/lib/squid/squid_ldap_auth -b
    ou=People,dc=linuxchange,dc=com 127.0.0.1
auth_param basic children 5
auth_param basic realm RTN Internet Proxy
auth_param basic credentialsttl 2 hours
proxy_auth_realm LXE Squid proxy-caching web server
acl password proxy_auth REQUIRED
http_access allow password

Con esto Squid 2.5+ intentará autenticar primeramento utilizando el Dominio de Windows y después la autenticación básica.   


Permisos de archivos 

Un requisito indispensable para que la autenticación con NTLM funcione es el acceso al usuario que ejecute el demonio tenga acceso al archivo /var/cache/samba/winbindd_privileged/pipe.  Esto generalmente se compone añadiendo el usuario squid al grupo root.  Por ningún motivo el dueño del demonio o los permisos del directorio deben ser cambiados.


Servicios dependientes y comentarios 

Es necesario para tener este tipo de autenticación tener el Directorio LDAP y el Dominio de Windows configurados.  Si se requiere tener más control sobre la navegación los artículos Control de Navegación por Inscripción a Grupo y Bloqueo de MSN podrán ayudarle en requerimientos futuros.