Estoy trabajando en un proxy Squid que necesita autenticar a los usuarios en un dominio de Active Directory; esto funciona bien, Samba se configuró correctamente y Squid autentica a los usuarios a través de ntlm_auth
. Líneas relevantes en squid.conf:
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 5
auth_param ntlm keep_alive on
acl Authenticated proxy_auth REQUIRED
http_access allow Authenticated
http_access deny all
Ahora, necesito una forma de permitir el acceso a usuarios que no tienen una cuenta de dominio. Sé que podría crear una cuenta de "usuario de Internet" en el dominio, pero esto permitiría el acceso, aunque limitado, a los recursos del dominio (archivos compartidos, etc.); Necesito algo que sólo permita el acceso a Internet.
La solución ideal sería utilizar una cuenta local en el servidor proxy, ya sea una cuenta de Linux o una de Squid; Sé que Squid admite esto, pero no puedo usarlo.ambosautenticación de dominio y autenticación Squid/local si la autenticación de dominio no tiene éxito.
Se puede hacer esto? ¿Cómo?
Respuesta1
Ahora, necesito una forma de permitir el acceso a usuarios que no tienen una cuenta de dominio. Se puede hacer esto?
Sí.
¿Cómo?
Puede utilizar un asistente de ACL "externo", que le permite ejecutar su propio mecanismo. Ver elEntrada de "fuente múltiple" de Squid wikipara más detalles. Este fragmento de pseudocódigo surgió directamente de allí:
auth_param basic program /usr/local/bin/my-auth.pl
external_acl_type myAclType %SRC %LOGIN %{Proxy-Authorization} /usr/local/bin/my-acl.pl
acl MyAcl external myAclType
http_access allow MyAcl
... donde my-auth.pl es un script en Perl que realiza la autenticación real y devuelve OK
o ERR
como resultado.
Respuesta2
cree un usuario de dominio restringido (unidad organizativa aislada). desde squid, cree una autenticación ldap de squid que permitirá al usuario utilizar Internet.