pfSense Gold Subscription

Author Topic: Pfsense + Squid + LDAP + ACL BASEADA EM GRUPOS DO AD  (Read 11800 times)

0 Members and 1 Guest are viewing this topic.

Offline fabiod

  • Newbie
  • *
  • Posts: 1
    • View Profile
Pfsense + Squid + LDAP + ACL BASEADA EM GRUPOS DO AD
« on: October 30, 2009, 08:08:33 am »
Ola,

Antes de começar a citar o problema pelo qual estou passando irei demonstrar o cenário atual em que estou utilizando p Pfsense.

1.  Pfsense como firewall.
2.  Pfsense como proxy + Autenticação LDAP

Este cenário está funcionando 100%. A autenticação está funcionando sem problemas.

Problema: ACL BASEADA EM GRUPOS DO AD

Fiz uma busca refinada pelo forum e não encontrei nenhum material relativo a estes item, "Criar acls baseadas em Grupos do AD".

Para tentar corrigir este problema estou utilizando em: Custom Options

external_acl_type GRUPOS ttl=1 children=125 %LOGIN /usr/local/libexec/squid/wbinfo_group.pl;
acl SUPORTE external GRUPOS suporte;


A partir disto surgem duas situações:
1. Esta ACL não aparece disponível para o SquidGuard na criação de uma regra de acesso.
2. Mesmo criando a regra de acesso manualmente, a Seleção não funciona.  Exemplo: http_access deny SUPORTE Relacionamento;


Alguém tem idéia de como fazer isto funcionar corretamente?

Abraço





Offline leandrodearaujo

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Pfsense + Squid + LDAP + ACL BASEADA EM GRUPOS DO AD
« Reply #1 on: March 22, 2010, 09:13:18 am »
Olá Fábio!

A idéia é usar a autenticação pelo ldap ao invés do winbind. Consegui implementar essa autenticação no squid, mas não sei se há como funcionar no squidguard. Uso a versão 1.2.3 RC1 e preencher os dados da autenticação pela guia "Auth Settings" não funcionou, porque o squid.conf gerado automaticamente não leva o parâmetro -R que eu precisei para o acesso ao ldap do AD funcionar. A solução foi criar uma configuração personalizada incluindo as linhas no campo "custom options" da guia "general settings" do squid. O exemplo a seguir dá acesso limitado a uma lista de domínios a um determinado grupo de usuários e acesso total a outro grupo de usuários. Tudo o que está entre os <  > são variáveis do seu ambiente. 
1. Antes de tudo crie uma "OU" no seu AD para os usuários e crie dentro da OU os grupos que terão acesso diferenciado, incluindo os usuários nos grupos.
2. crie um arquivo no diretório /usr/local/etc/squid/ contendo os domínios permitidos ao grupo com acesso restrito.
3. A seguir inclua essas linhas no seu squid:
auth_param basic program /usr/local/libexec/squid/squid_ldap_auth -v 3 -R -b dc=<domínio>,dc=<sufixo do domínio> -D cn=<administrador do domínio>,cn=Users,dc=<domínio>,dc=<sufixo do domínio> -w <senha do administrador do domínio> -f "sAMAccountName=%s" -u uid -P <IP do controlador de domínio>;external_acl_type ldap_group %LOGIN /usr/local/libexec/squid/squid_ldap_group -R -b "dc=<domínio>,dc=<sufixo do domínio>" -D "cn=<administrador do domínio>,cn=Users,dc=<domínio>,dc=<sufixo do domínio>" -w "<senha do administrador do domínio>" -f "(&(&(objectClass=person)(sAMAccountName=%u))(memberOf=%g))" -h <IP do controlador de domínio>;acl <nome da acl para grupo com acesso limitado> external ldap_group CN=<grupo com acesso limitado, criado dentro da OU dos usuários>,OU=<OU dos usuários>,DC=<domínio>,DC=<sufixo do domínio>;acl <nome da acl por domínio de destino> dstdom_regex -i "/usr/local/etc/squid/<arquivo contendo lista de domínios permitido>";http_access allow <nome da acl para grupo com acesso limitado> <nome da acl por domínio de destino>;acl <nome da acl para grupo com acesso total> external ldap_group CN=<grupo com acesso total, criado dentro da OU dos usuários>,OU=<OU dos usuários>,DC=<domínio>,DC=<sufixo do domínio>;http_access allow <nome da acl para grupo com acesso total>
4. Salve as configurações, reinicie o squid e teste.

Talvez funcione uma ACL do squidguard pelo nome do usuário, na verdade, nunca tentei pelo squidguard.

Espero ter ajudado! Se sim, bom proveito!

Leandro B. de Araújo

Offline souzalinux

  • Sr. Member
  • ****
  • Posts: 334
    • View Profile
Re: Pfsense + Squid + LDAP + ACL BASEADA EM GRUPOS DO AD
« Reply #2 on: June 07, 2010, 07:13:04 am »
Podia especificar melgor como seria esse esquema pois estou quebrando a cabeça para realiza-lo desde já agradeço a atenção e a ajuda
Souza Linux

Offline leandrodearaujo

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Pfsense + Squid + LDAP + ACL BASEADA EM GRUPOS DO AD
« Reply #3 on: July 01, 2010, 11:38:28 am »
Vou tentar esmiuçar as ACLs:


No AD, crie unidades organizacionais(OU) e dentro delas, os grupos de usuários segundo o nível de acesso a ser dado.
Adicione as seguintes linhas no campo "custom options" separando-as por ";"(note que o que está entre "<>" são variáveis que você irá substituir segundo o seu ambiente). Neste exemplo, o squid vai restringir o acesso de um grupo do AD a uma lista de sites listados em um arquivo texto e vai dar acesso total a outro grupo.


#Define a autenticação ldap e os parâmetros usados
auth_param basic program <caminho para módulos do squid>/squid_ldap_auth -v 3 -R -b dc=<subdomínio>,dc=<domínio> –D cn=<administrador do AD>,cn=<Users para windows server em inglês ou Usuários do domínio para windows server em português>,dc=<subdomínio>,dc=<domínio> –w <senha do administrador do AD> -f "sAMAccountName=%s" -u uid -P <IP do controlador de domínio>

#Define a ACL do tipo external para usar os grupos do AD
external_acl_type ldap_group %LOGIN <caminho para módulos do squid>/squid_ldap_group -R -b "dc=<subdomínio>,dc=<domínio>" -D
"cn=<administrador do AD>,cn=<Users para windows server em inglês ou Usuários do domínio para windows server em português>,dc=<subdomínio>,dc=<domínio>" -w "<senha do administrador do AD>" -f "(&(&(objectClass=person)(sAMAccountName=%u))(memberOf=%g))" -h <IP do controlador de domínio>

#Define uma ACL denominada "produtividade" para um grupo que terá acesso restrito.
acl <nome da ACL1> external ldap_group CN=<grupo com acesso restrito>,OU=<unidade organizacional>,DC=<subdomínio>,DC=<domínio>

#Define uma ACL para acesso restrito aos domínios listados em um arquivo texto
acl <nome da ACL2> dstdom_regex -i "<caminho completo para o arquivo texto que contém a lista de domínios>"

#Define a diretiva formada pela combinação das ACLs acima definidas (AND lógico).
http_access allow <nome da ACL1> <nome da ACL2>

#Define uma ACL para um grupo com acesso total. 
acl <nome da ACL3> external ldap_group CN=<grupo com acesso total>,OU=<unidade organizacional>,DC=<subdomínio>,DC=<domínio>

#Define a diretiva de acesso total.
http_access allow <nome da ACL3>

Feito isso, reinicie o squid e ele vai começar a autenticar os usuários no AD.
Espero ter ajudado, mas caso algo não tenha ficado claro, fique à vontade para perguntar.

Att,

Leandro.

Offline tcorreia

  • Newbie
  • *
  • Posts: 1
    • View Profile
Re: Pfsense + Squid + LDAP + ACL BASEADA EM GRUPOS DO AD
« Reply #4 on: August 16, 2010, 10:12:03 am »
Sou novo utilizando o Pfsense, o meu pfsense está 100% funcional funcionando o Failover para os links aqui da empresa.
Tudo certo, porem estou usando o squid para autenticação de maquinas e queria integrar com autenticação do AD no windows 2008 e já realizei muitos testes porem nada funcionou.
E por ser leigo no Pfsense e qualquer plataforma linux/unix, gostaria de saber o processo detalhado para essa configuração ou pelo menos uma explicação para que eu saiba como configurar.
Desde já agradeço