Tutorial - SquidGuard + LdapGroup (permissão por grupo no ad)
-
Não uso o squidguard, vou verificar onde é a restrição.
De qualquer forma, ser for restrição do squid/squidguard, da para alterar o script para ler o grupo do campo descrição.
mude disso:
echo "Group : " . $group['name']."\n";
$result = get_ldap_members($group['name'],$user_bind,$password);para isso:
echo "Group : " . $group['description']."\n";
$result = get_ldap_members($group['description'],$user_bind,$password);att,
Marcello Coutinho -
Vlw, funcionou pra mim.
-
o que acontece é o seguinte, eu consigo autenticar normalmente, testei a consulta manual ldapsearch e consultou tudo ok no meu ad, listou usuarios e grupos, mais ao autenticar os usuário não pegam os bloqueios, help-me
HELP ME PLEASE!!!
Outras pessoas tiveram o mesmo resultado, tente a segunda alternativa com o script que eu e o ccesario fizemos, este eu sei que funciona no dansguardian e no squidguard.
att,
Marcello Coutinhops:
Lembrando que o LuisGustavo deixou bem claro que era um patch experimental, ajuda para evoluir o status para stable é sempre bem vinda.Aqui no trabalho, tbm ta acontecendo a mesma coisa.
Os usuarios sao autenticados no Squid, porem nenhum filtro do SquidGuard esta sendo respeitado. Os usuarios acessam qualquer site.
Apliquei o patch feito pelo Luiz Gustavo, mas continua o mesmo problema.
Uma dúvida:
Depois de aplicado o patch e criado a ACL, tem mais algum passo que deve ser feito ?
Achei estrando pq o squidGuard.conf estava sem a busca ldap. A alteracao feita na aba Group ACL nao deveria refletir nesse arquivo ? -
Apliquei o patch feito pelo Luiz Gustavo, mas continua o mesmo problema.
Use o script deste post, alguns usuários já relataram que o patch não está funcionando.
att,
Marcello Coutinho -
Galera, o meu script quando rodo via terminal aparece os seguinte erros
**[2.0.1-RELEASE][root@firewall.imcsaste.saomateus.local]/root(34): /usr/local/bin/php -q /root/squidguard_ldap.php
Group : TI
Group : GalpaoWarning: Invalid argument supplied for foreach() in /root/squidguard_ldap.php on line 41
Group : BaseWarning: Invalid argument supplied for foreach() in /root/squidguard_ldap.php on line 41
Group : CoordenadorWarning: Invalid argument supplied for foreach() in /root/squidguard_ldap.php on line 41**
Alguem pode me ajudar?
-
Alguem pode me ajudar?
O script carrega os usuários para a gui do squidguard?
Se sim, estes erros podem significar itens cadastrados no grupo do ad que são incompatíveis com a função.Evite usar acentos nos nomes dos usuários.
att,
Marcello Coutinho -
O script carrega os usuários para a gui do squidguard?
Se sim, estes erros podem significar itens cadastrados no grupo do ad que são incompatíveis com a função.Evite usar acentos nos nomes dos usuários.
att,
Marcello CoutinhoMarcelo, o script carrega sim os usuarios na squidguard, e todos os meus grupos e usuários não contem acentos e nem espaço.
-
o script carrega sim os usuarios no squidguard, e todos os meus grupos e usuários não contem acentos e nem espaço.
Então o script está funcionando 100%, pode ignorar os warnings.
-
Só pra constar.
Aqui no trabalho descobrimos que existe algum erro com o ultimo pacote do squidGuard (squidGuard-1.4_4.tbz).
Desconfiamos que estava com erro, pois sempre ao aplicarmos as alterações no squid + squidGuard e acompanharmos o log da compilação do squidGuard (tail no caminho /var/squid/log/cache.log), sempre era acusado erro bem na linha de autenticacao com ldap ldapusersearch ldap://192.168….etc, etc, etc....Fizemos uma gambi que deixou o ambiente funcionando redondinho (Pelo menos ate agora) ;).
Vou explicar:
O problema :
O Squid estava funcionando, mas o squidGuard nao, ou seja, era solicitado o usuario/senha na navegação, mas nenhum filtro estava sendo respeitado. Qualquer site que o usuario tentasse, o squidGuard liberava.Primeira tentativa de solução (sem sucesso):
Removemos e instalamos novamente o pacote squidGuard, porém o erro persistiu.Segunda tentativa de solução (sem sucesso):
Removemos e instalamos novamente os pacotes squid E squidGuard, porém o erro persistiu.Terceira tentativa de solução (com sucesso) :) :
Removemos e instalamos novamente o pacote squidGuard (Por padrão ele baixa sempre a ultima versao).
Baixamos "na unha" uma versao anterior do pacote squidGuard
(http://files.pfsense.org/packages/8/All/squidGuard-1.4_3.tbz)
e substituímos o executavel (somente o arquivo squidGuard) do ambiente pelo dessa versão.
Corrigimos os direitos de acesso do arquivo (chmod) e depois disso até o momento esta funcionando perfeitamente.Nao sei sei mais alguem estava sofrendo com isso, mas fica aí uma solução alternativa pra ser tentada.
Agradeço a todos aqueles que de alguma forma tentaram ajudar.
Vou tentar ajudar sempre que for possível. -
jcesarsc,
Este erro esta acontecendo com qual solução de autenticação por grupo deste tópico?
att,
Marcello Coutinho -
jcesarsc,
Este erro esta acontecendo com qual solução de autenticação por grupo deste tópico?
att,
Marcello CoutinhoAutenticação por grupo do AD.
Aquela que vc cria os grupos no AD e coloca os usuarios dentro do grupo para serem autenticados pelo squid e serem filtrados pelo squidGuard. -
As duas fazem isso :)
O LuisGustavo postou um patch para o squidguard, enquanto ccesario e eu publicamos um script que via cron puxa os usuários do AD e aplica no grupo do squidguard criado com o mesmo nome.
att,
Marcello Coutinho -
As duas fazem isso :)
O LuisGustavo postou um patch para o squidguard, enquanto ccesario e eu publicamos um script que via cron puxa os usuários do AD e aplica no grupo do squidguard criado com o mesmo nome.
att,
Marcello CoutinhoTentei utilizando o script elaborado pelo L. Gustavo.
Nao quis tentar o outro que vc e o ccesario fizeram pq iria ficar um campo com muuuuuuuuitos nomes, pois aqui onde trabalho tem muitos usuarios que passam pelo proxy. Prefiro adicionar os usuarios dentro do grupo no AD.
Se fosse um ambiente com poucos usuarios, sem pensar 2 vezes, iria utilizar o script de voces.
Só postei aqui o que passei pra aliviar a barra de quem tbm sofreu ou esta sofrendo com isso. -
Nao quis tentar o outro que vc e o ccesario fizeram pq iria ficar um campo com muuuuuuuuitos nomes, pois aqui onde trabalho tem muitos usuarios que passam pelo proxy. Prefiro adicionar os usuarios dentro do grupo no AD.
Se fosse um ambiente com poucos usuarios, sem pensar 2 vezes, iria utilizar o script de voces.Não vejo diferença com poucos ou muitos usuários, uma vez que você não precisa cadastrar nenhum usuario no squidguard.
Só postei aqui o que passei pra aliviar a barra de quem tbm sofreu ou esta sofrendo com isso.
Obrigado pelo feedback.
-
Pessoal,
Segue o link do script com o tratamento das mensagens de warnings.
https://github.com/ccesario/public/raw/master/squiguard_ldap.php
Acredito que agora ele não mostrará mais os warnings na console.
Quem testar, por favor de um feedback :)
att
Carlos -
Srs,
Com a ajuda do Marcello, o script agora suporta a interpretação de Grupo dentro de Grupo (no momento apenas 1 nível)
Ex.
GRUPOS do AD
GRUPO1 - 'jose' 'pedro'
GRUPO2 - @GRUPO1 'ricardo' 'patricia'Quando o script for executado as entradas no squidGuard ficarão assim
GRUPOS do SQUIDGUARD
GRUPO1 - 'jose' 'pedro'
GRUPO2 - 'jose' 'pedro' 'ricardo' 'patricia'A versão atual do script está no seguinte endereço
https://github.com/ccesario/public/blob/master/squiguard_ldap.php
Por favor não deixem de dar um feedback sobre o funcionamento do mesmo
att,
-
Ccesario,
Fiz um teste aqui colocando um grupo dentro de outro grupo e está funcionando 100%!
Ele exibe na GUI do SquidGuard tanto os usuários do 1º grupo quanto os do 2º grupo ;)Parabéns a você e ao Marcello que tiveram a iniciativa e ajustaram o script ;)
Parabéns ao Luiz Gustavo que desenvolveu e deixou a disposição a outra solução…Toda comunidade agradece...
Abraço,
Gedaías Brandão
-
Realmente isso é otimo, o único problema em usar o squidGuard é que é preciso apagar o histórico do navegador depois de liberar um site que antes estava negado.
-
Parabéns ao Luiz Gustavo que desenvolveu e deixou a disposição a outra solução…
Este script é criação do ccesario, não do Luiz Gustavo.
O tópico tem duas soluções, uma com o patch feito pelo Luiz e outro com o script criado/adaptado pelo ccesario com minha ajuda.
att,
Marcello Coutinho -
Bom dia Amigos do Forum, sou novo no pfsense e Preciso de Um passo a Passo. Vou trocar 14 Server Endian+AD para o PFSense.
Estou a 3 meses debulhando o forum, ate o momento nao consegui fazer o PFSense autenticar os Usuários do Domino Windows 2003 / Windows 2008.
Na verdade tenho pouco conhecimento com linha de comando, e preciso se nao for abusar de um passo a passo.
Ja baixei o script , e efetuei as alteracoes para autenticar em um AD Teste em Laboratorio, mais nao sei como jogar dentro do pfsense, como aplica-lo, quais sequencias de instalacao dos pacotes e como rodar o mesmo.
Abaixo como ficou meu script apos alteracao.// based on http://samjlevy.com/2011/02/using-php-and-ldap-to-list-of-members-of-an-active-directory-group/
// pfsense integration by marcelloc and ccesario
// ldapsearch -x -h 192.168.11.1 -p 389 -b OU=Internet,DC=domain,DC=local -D CN=Proxyauth,OU=PROXY,DC=domain,DC=local -w PASSAD HOST (required) o ip abaixo é do Server 2003 DC
$ldap_host = "192.168.1.254";
AD DIRECTORY DN(required) Abaixo nome do servidor e nome do dominio completo
$ldap_dn = "OU=SRV01,DC=domaintest,DC=local";
BIND USER(required) abaixo alterei apenas o nome do dominio, Esse PROXY É o usuário criado no ad ??
$user_bind = "CN=Proxyauth,OU=PROXY,DC=domaintest,DC=local";
PASSWORD BIND(required) abaixo coloquei a senha 123456
$password = "123456";
#if you need to apply any prefix or sufix to retreived user
#example: prefix user with domain(required)
#$user_mask="DOMAIN\USER";
$user_mask="USER";Obs. As Estacoes já estao logando no AD.
O nome do Servidor = srv01.domaintest.local - ip 192.168.1.254
Estou com a versao 2.01 + Squid + Squidguard.VLW Obrigado
Adriano