Escolar Documentos
Profissional Documentos
Cultura Documentos
Autenticacao Grupos AD Pfsense
Autenticacao Grupos AD Pfsense
Este tutorial demonstra como utilizar os recursos da biblioteca squid_ldap_group para que o Squid autentique os usurios por grupos cadastrados no Active Directory. Por: Ricardo Pardim Claus 29/07/2011 Tags: Squid, pfSense, Active Directory, AD, openldap-client, squid_ldap_group, squid_ldap_auth, squid.inc Vero do sistema e pacotes utilizados: pfSense verso 2.0 RC3 Squid verso 2.7 Windows 2003 R2 Existe um bug no squid e no openldap-client, ambos nas verses anteriores 2.0 do pfSense. Caso o seu pfSense esteja em produo, e no tem como fazer uma nova instalao, dever primeiro resolver estes problemas seguindo estes tutoriais: http://www.fug.com.br/content/view/689/77/ http://www.vivaolinux.com.br/dica/Corrigindo-a-opcao-de-Delay-Pools-e-autenticacao-Ldap-do-Squid2.7.8_1-no-PfSense-1.2.3Release Bases de Referencias: http://forum.pfsense.org/ http://www.squid-cache.org.br/index.php?option=com_content&task=view&id=50&Itemid=27 http://www.cyberciti.biz/tips/howto-configure-squid-ldap-authentication.html http://www.papercut.com/kb/Main/ConfiguringSquidProxyToAuthenticateWithActiveDirectory http://forum.pfsense.org/index.php/topic,20208.0.html http://www.digipedia.pl/man/doc/view/squid_ldap_auth.8 Mos a obra: Primeiramente, o squid no pode estar configurado em modo proxy transparente. Neste modo, no possvel nem ao menos configurar as opes de autenticao no webgui do pfSense, j que proxy transparente no faz autenticao. No Active Directory, crie uma OU, com o nome Internet. Nesta OU, crie 2 grupos Internet-TI, e Internet-Bancos, ou qualquer nome que mais lhe agradar. O grupo Internet-TI, tem acesso full, sem nenhum bloqueio. J o internet-bancos, ira navegar apenas em sites cadastrados em uma lista (lista branca). Na OU Users, crie um usurio com qualquer nome, aqui utilizei o usurio squid. Defina uma senha para este usurio, e lembre de marcar a opo para no expirar a senha deste usurio. Aps concluir toda a configurao indicada neste tutorial, voc poder criar quantos grupos desejar, e seguir com os bloqueios e liberao para cada um deles. Suponho que o seu Squid j esteja funcionando com os bloqueios desejados. Antes, necessrio alterar as regras de firewall, para que as estaes clientes sejam obrigadas a utilizarem o proxy local para ter acesso a internet. No menu Firewall > Rules, as regras devem ficar conforme imagem abaixo: OBS: A regra importante que desabilitei, foi a segunda regra, pois ela permite acesso total a qualquer endereo de destino. Note que no final das regras, eu criei uma regra semelhante.
Figura 1 - Regras de firewall Agora vamos as configuraes do squid. Acesse o menu Services > Proxy Server. Na guia General, desabilite a opo de Proxy Transparente. Em seguida, acesse a guia Auth Settings. Altere as regras conforme a imagem abaixo:
Figura 2 - Configurao da guia Auth Settings do Squid Explicando os valores que utilizei, para servir como referencia: Meu dominio: dominio.com.br Servidor AD: 10.0.0.2 Usurio squid: Este usurio que far a autenticao no AD, para efetuar as pesquisas na base de dados ldap. Nota: Muitos tutoriais existentes na internet, indica para utilizar um usurio Administrator para pesquisar na base de dados ldap. Mas no necessrio que o usurio seja administrador. Crie um usurio com um nome qualquer, sem que este seja administrador do sistema. Isto aumenta a segurana, j que a autenticao feita em texto puro, sem nenhum tipo de encriptao. (Vide seo Testes e resultados) Aps efetuar as alteraes e salvar, e inclusive o proxy configurado no navegador da maquina cliente, o Squid j ira solicitar autenticao para navegar. Autenticao por Grupo Falta configurar o squid para autenticar por grupo, e no por usurio ou IP. Lembrando que nenhuma alterao deve ser feito no arquivo squid.conf (/usr/local/etc/squid/squid.conf), como feito em outras distribuies linux. Estas configuraes so sobre escritas sempre que o pfSense for reiniciado, ou qualquer alterao feita pela webgui. O correto alterar diretamente o arquivo squid.inc.