Problemas em Squid2 autenticar no Ldap3 do Zimbra
-
Pessoal,
Usei o pfSense até um tempo atrás e estou um pouco enferrujado, depois de trabalhar com outros focos da TI.Estou tentando migrar os serviços Squid+Squidguard autenticando em uma base Ldap Zimbra de um servidor linux para um pfSense, mas não estou conseguindo ter sucesso na autenticação na base Ldap do Zimbra.
Já pesquisei bastante, mas quase não achei nada que ajudasse.O servidor em produção é um Fedora21, kernel 3.19.7, com squid-3.4.12.
No squid.conf está funcionando assim:AUTENTICAR
auth_param basic program /usr/lib64/squid/basic_ldap_auth -b "dc=AAA,dc=BBB,dc=CCC" -D "" -w "" -f "(&(uid=%s)(objectClass=zimbraAccount))" -v 3 -h IP_ZIMBRA -p 389
external_acl_type ldap_group %LOGIN /usr/lib64/squid/ext_ldap_group_acl -D "" -w "" -b "dc=AAA,dc=BBB,dc=CCC" -f "(&(objectclass=person)(sAMAccountName=%u)(memberof=*))" -S -v 3 -h IP_ZIMBRA -p 389
acl ldapauth proxy_auth REQUIREDNo pfSense 2.2.4, testei as versões squid2 e squid3. Mais focado no squid2 instalado pelo Package Manager do pfSense.
Em 'Proxy Server\ Auth Settings', coloquei os parâmetros assim:
LDAP version: 3
Authentication server: IP_ZIMBRA
Authentication server port: 389
LDAP server user DN: ""
LDAP password:
LDAP base domain: dc=AAA,dc=BBB,dc=CCC
LDAP username DN attribute: uid
LDAP search filter: (&(uid=%s)(objectClass=zimbraAccount))No browser fica sempre pedindo credenciais e no access.log continua denied access.
Alguém já configurou algum ambiente parecido ?
já estava aqui quando cheguei
não sou especialista em ldap
-
Bem, como consegui descobrir a resolução vou colocar aqui para quem mais precisar:
No squid do servidor a linha abaixo efetua a consulta na base LDAP do Zimbra:
auth_param basic program /usr/lib64/squid/basic_ldap_auth -b "dc=AAA,dc=BBB,dc=CCC" -D "" -w "" -f "(&(uid=%s)(objectClass=zimbraAccount))" -v 3 -h IP_ZIMBRA -p 389Os parâmetros -D "" -w "" passam o usuário e senha vazios para a consulta. E isso não é permitido na GUI do pfsense.
Tentei passar o DN de usuários com permissão admin, mas também sem sucesso;Consegui fazer funcionar colocando as linhas diretamente em "Custom Options" e funcionou. A linha ficou assim:
auth_param basic program /usr/local/libexec/squid/squid_ldap_auth -v 3 -b "dc=AAA,dc=BBB,dc=CCC" -D "" -w "" -f "(&(uid=%s)(objectClass=zimbraAccount))" -h IP_ZIMBRA -p 389;Mas eu não queria ter de deixar a configuração aqui. Então testando várias formas, conseguir passar esse campos vazios e fazer o squid do pfSense utilizar a base Ldap do Zimbra com "" nos dois campos.
Segue os parâmetros que funcionaram :
Proxy server: Authentication
LDAP version: 3
Authentication server: IP_ZIMBRA
Authentication server port: 389
LDAP server user DN: ""
LDAP password: ""
LDAP base domain: dc=AAA,dc=BBB,dc=CCC
LDAP username DN attribute: uid
LDAP search filter: (&(uid=%s)(objectClass=zimbraAccount))
Authentication prompt: Insira as credenciais para acessar a internet
Authentication processes: 8
Authentication TTL: 300Ah, solução testada nas versões pfSense 2.1.5 e 2.2.4