Proxy com WPAD pelo DHCP

Publicado por Rick em 05/02/2013

[ Hits: 16.148 ]

Blog: http://www.guiadoti.com

 


Proxy com WPAD pelo DHCP



Pessoal, veremos um protocolo que nos permite configurar o proxy no cliente automaticamente através de serviços, como DHCP ou DNS, por exemplo.

Abordaremos a configuração juntamente com o DHCP. Esse protocolo chama-se WPAD (Windows Auto Discovery). Esse recurso elimina a necessidade de se configurar o proxy como transparente, que por sua vez, peca em alguns pontos, como HTTPS e autenticação, por exemplo.

Ao utilizar o serviço de DHCP, o browser irá buscar no registro da conexão um campo com código 252, esse campo, por sua vez, contém uma URL para um arquivo de texto chamado PAC, que diz qual endereço do servidor proxy, esse arquivo deverá estar em um servidor HTTP.

Certifique-se que você possui um servidor proxy, um servidor DHCP e um servidor HTTP corretamente configurados e testados. Para aqueles que não possuem intimidade com estes serviços, seguem alguns links do Guia do TI que irão ajudá-los:
Obs.: No link do Apache, pode seguir até a parte de instalação somente.

Bem, primeiro criaremos o arquivo de configuração PAC, vá até o diretório raiz de seu Apache:

# cd /var/www/
# pico wpad.dat


Coloque o seguinte conteúdo dentro do arquivo:

function FindProxyForURL(url, host) {
if(isPlainHostName(host))
     return "DIRECT";
else
     return "PROXY 192.168.0.1:3128";
}

Obs.: Mude o IP e a porta que estão no arquivo de acordo com seu cenário.

Em seu arquivo de configuração do DHCP, adicione as linhas abaixo:

option wpad code 252 = text;
option wpad "http://ip.do.apache/wpad.dat\n";

Depois disso, reinicie seu DHCP.

Verifique se os clientes estão configurados pra obter IP por DHCP. Agora basta reiniciar o Windows, ou reiniciar a placa de rede; verifique também se o browser está configurado para detectar automaticamente as configurações de proxy.

Feito todos os passos, é hora dos testes: abra o navegador do cliente e acesse uma URL bloqueada para ver se vai aparecer o erro do Squid. Esse método, a meu ver, só tem um pequeno problema, se o usuário espertinho for até às configurações do browser e desmarcar a opção "Detectar automaticamente as configurações", ele vai navegar por fora do proxy, então, você pode bloquear isso via registro do Windows.

Adicione a seguinte chave no cliente:

REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoControlPanel /t REG_DWORD /d 0×00000001 /f

Assim ele não consegue acessar o painel de controle e também não consegue acessar as configurações de proxy pelo navegador. Se você usa o Samba ou Active Directory, pode fazer isso automaticamente na hora do login.

Bem pessoal, é isso aí.

Espero que tenham gostado do post e que apliquem essa funcionalidade no ambiente de vocês, pois é muito legal mesmo. Até a próxima.

Dica também publicada em: Guia do TI: Proxy com WPAD Pelo DHCP

Outras dicas deste autor

MySQL - Comandos básicos

Auditando com Snoopy

Ambiente seguro com chroot

Controle de banda com HTB-tools

Servidor FTP com ProFTPD - Instalação e configuração

Leitura recomendada

Evitando fingerprint no Apache

Limitando uso do comando su

Consertando o sistema de arquivos de seu OpenBSD 4.5

Squid com usuários X computadores por setor usando endereço MAC

Retornando a lista de usuários de uma aplicação vulnerável usando o SQL Injection

  

Comentários
[1] Comentário enviado por removido em 05/02/2013 - 16:37h

Axo que isso será util para min, vou testar. Vlw pela dica, ficou bem explicado.

[2] Comentário enviado por mmerlone em 06/02/2013 - 08:24h

Ao invés de alterar o registro do windows, pode fechar a navegação no firewall. Hoje em dia até roteador doméstico tem um.

[3] Comentário enviado por raissamarcon em 15/11/2013 - 22:49h

Muito bem explicado e funcionou perfeitamente pra mim! Um dos poucos tutoriais sobre WPAD que é simples, pequeno e realmente funciona.

[4] Comentário enviado por andrew_ em 02/11/2014 - 14:05h

Muito bom Funciona certinho. para os usuários espertinhos eu coloquei uma regra no iptables para todas as requisições da porta 80 e da 443 passarem pela 3128 ou seja se o proxy não tiver configurado não funciona.



Contribuir com comentário