Autenticação de proxy de código aberto usando vários LDAP

1

Estou trabalhando na criação de novos proxies da web no meu trabalho. Estávamos inicialmente planejando comprar proxys da Blue Coat, mas a crise econômica veio e não estamos mais comprando ...

A grande característica que esses proxys tinham era que eles ofereciam a possibilidade de autenticar usuários contra vários proxies LDAP. Por exemplo, uma determinada sub-rede de usuários autenticados em um servidor LDAP específico, enquanto outra sub-rede de usuários se autentica em outro servidor LDAP.

Isso é possível usando um software de código aberto, como o Squid? Eu realmente gosto do Pfsense porque a interface é realmente simples e bonita, seria possível fazer algo assim?

Obrigado antecipadamente pela sua ajuda,

Antoine

    
por Antoine Benkemoun 16.09.2009 / 16:56

3 respostas

2

Você faz com que o Squid seja autenticado em um único servidor OpenLDAP que atua como um proxy para vários diretórios de back-end. De slapd-meta (5):

NAME slapd-meta - metadirectory backend

SYNOPSIS /etc/ldap/slapd.conf

DESCRIPTION The meta backend to slapd(8) performs basic LDAP proxying with respect to a set of remote LDAP servers, called "targets". The information contained in these servers can be presented as belonging to a single Directory Information Tree (DIT).

Isso funcionará mesmo se as hierarquias DN fizerem overlay entre os dois grupos, escrevendo algumas regras de massageamento - acredito que seja o caso, porque você estaria usando aliasing e delegação.

De qualquer forma, acredito que seja saudável que os usuários tenham permissão para se autenticar no diretório unificado, porque sua identidade permanece a mesma, independentemente da sub-rede em que eles se encontram.

    
por 30.09.2009 / 03:13
1

Em minha resposta, estou assumindo que você leu sobre o protocolo de autenticação do Squid, está familiarizado sobre como configurar um auxiliar de autenticação do LDAP e está planejando executar o Squid sob algum tipo de sistema Unix operationg. Além disso, as duas primeiras respostas ajudam você a escolher diferentes servidores LDAP com base no nome de usuário, não na sub-rede IP (você mencionou "sub-rede", mas "subconjunto" do ITYM - certo?).

  1. Use um script simples (idioma não importa, use o seu favorito) para encaminhar o pedido para diferentes Servidores LDAP baseados no nome de usuário. Um administrador experiente do Unix deve colocar isso em funcionamento dentro de 30 minutos, não é um grande lidar.
  2. Use um único servidor LDAP que retorna referências LDAP com base no DN do usuário.

Se você realmente quiser mudar os servidores LDAP com base na sub-rede IP, as coisas ficarão um pouco feias, já que o protocolo de autenticação do Squid só transmite pares de nome de usuário / senha para os helpers de autenticação:

  1. Configure um único servidor Squid e faça-o escutar somente no host local. Esta instância do Squid fará todo o trabalho de armazenamento em cache.
  2. Para cada sub-rede, configure outro Instância Squid, sem um local cache, e configure o apropriado Servidor LDAP. Use portas diferentes para cada instância do Squid também. Essas instâncias do Squid encaminham todas as solicitações para o armazenamento em cache definido na etapa 1.
  3. Dependendo de como você configura o proxy configurações nos navegadores de seus usuários, você terá que usar o DNS visualizações ou redirecionar regras em seu servidor web.
por 25.09.2009 / 17:25
0

Você pode criar seu próprio auxiliar de autenticação para o squid - link

link

    
por 25.09.2009 / 13:05