Squid LogoOlá galera,

Estou de volta para tratar de um assunto extremamente comum: o uso do proxy Squid integrado com um domínio Active Directory (AD) baseado em Windows 2008.

Precisei montar um proxy desses recentemente e pesquisando na Internet me deparei com muitos tutoriais baseados em versões antigas do Squid e do Windows, e também soluções pouco elegantes, necessitando compilar módulos de terceiros para conseguir a utilização de grupos do AD em regras do Squid e muitas soluções necessitando a digitação de usuário e senha. Esta solução utiliza os módulos padrões do Squid 3 e é baseada em Ubuntu 10.04 LTS. É claro que com alguns ajustes a mesma solução pode ser adotada em outros sabores de Linux. A autenticação é transparente para o usuário e gerenciada pelo próprio Windows através de NTLM (NT LAN Manager), ou seja, não é necessário digitar usuário e senha para se autenticar. Uma vez que o computador esteja em um domínio e o usuário se autenticou neste domínio, as mesmas credenciais serão utilizadas. É possível assim, criar regras baseadas em usuários ou grupos de usuários, permitindo acesso a alguns sites ou portas para um grupo e negando para outros.

Para facilitar o entendimento e a implementação, dividi o assunto em 3 tutoriais:

Tipos de Proxy

Existem basicamente três tipos de proxy:

  1. Encaminhamento (Forward).
  2. Transparente ou de interceptação (Transparent/Interception)
  3. Reverso (Reverse)

Proxy de Encaminhamento

Proxy de Encaminhamento

Esta é uma topologia das mais simples, com o proxy tendo uma única interface de rede e estando no mesmo nível das estações da rede. Os browsers dos clientes precisam ser configurados, manualmente ou automaticamente, com o endereço do proxy e a porta de acesso.

É esta topologia que iremos tratar nesta pequena série de tutoriais, inclusive tratando da forma de automatizar a configuração do Proxy usando o WPAD.

Proxy Transparente ou de Interceptação

Proxy TransparenteEsta topologia implica que o proxy é o default gateway para os computadores da rede. Pode ser aplicada como mostrada na figura acima, utilizando o proxy em modo bridge, com duas placas de rede, ou ainda de forma semelhante ao proxy de encaminhamento, com uma única interface de rede, porém tendo os computadores configurados seu default gateway (roteador) como sendo o endereço IP do proxy. Todo o acesso à Internet passa obrigatoriamente pelo proxy.
Não irei tratar das configurações deste tipo de proxy.

Proxy Reverso

Proxy Reverso

O Proxy reverso é utilizado para que clientes da internet acessem um servidor web que está dentro de sua rede. Seu uso é comum para desafogar a carga do servidor web interno, e também para permitir balanceamento de carga entre diversos servidores web, ou ainda melhorar a segurança no acesso.

Não irei tratar deste tipo de proxy neste momento.

Observações

Estes tutoriais irão tratar somente de configuração de um proxy de encaminhamento.
Não é escopo tratar da instalação do Ubuntu, nem do Windows 2008 ou da instalação do Active Directory. Presupõe-se que o leitor já tenha um domínio Active Directory em funcionamento, que possua privilégios de administrador desse domínio (ou no mínimo de incluir um computador no domínio), e também que tenha um linux com Ubuntu 10.04 LTS instalado. O tutorial também se aplica as versões mais recentes do Ubuntu. Testei na versão 11.04 e o mesmo funciona perfeitamente.

Espero que este seja um bom guia para resolver este problema tão comum nas empresas hoje em dia.

Aproveito para dizer que apesar de não ter tempo para atualizar o site regularmente, continuo respondendo os comentários nos posts.

Abraços.