Como evitar que seus usuários burlem seu proxy

Muitos administradores parecem nao reconhecer o verdadeiro propósito de um proxy. Ele serve para garantir que nada além de um certo protocolo seja usado através do proxy. O Squid é um proxy HTTP. Ele garante que as pessoas não utilizem nada além de HTTP[[Footnote(Atualmente o Squid conversa com FTP sob HTTP e pode criar tunelamentos HTTPS também.)]] através dele.

Eu lamento se estou soando rudemente mas apos ouvir a outros administradores no IRC (#squid na irc.freenode.net) eu descobri que eles não fazem a menor idéia de como utilizar o Squid decentemente.

Erro 1: Interceptação de cache

Interceptação de cache (também conhecido como proxy transparente) quer dizer que seu firewall redirecionará todas as conexões na porta TCP 80 para o Squid. O browser acredita que está falando diretamente com o servidor de web quando na verdade está falando com o Squid.

Vantagens:

Desvantagens:

Eu frequentemente ouço desculpas como "Eu tenho 400 estações de trabalho que eu necessitaria mexer para mudar as configurações de proxy". Se voce realmente não tem controle sobre suas estações de trabalho então voce tem um problema muito maior de segurança de surfar na web. A interceptação de cache é muito conveniente. Mas se voce se preocupa com a segurança ela não é uma opção.

Erro 2: Acessos diretos são permitidos

É também muito comum (e muito estupido) que administradores de rede configurem um proxy Squid enquanto eles continuam permitindo acesso direto de conexões da rede para a internet. Mesmo que o administrador de rede configure as estações de trabalho do usuário para que utilizem o proxy, é muito simples mudar novamente e acessar a internet diretamente.

A regra simples deve ser: não são permitidas conexões diretas entre sua rede local e a internet. Todas as conexões passam por proxies seguramente configurados.

Solução

Frequentemente usuários no IRC (#squid) perguntam como eles podem evitar que seus usuarios mudem novamente as configurações de proxy. Esta é a pergunta errada! A solução correta é bloquear o acesso direto no firewall e executar todas as conexões através do proxy. Suas regras de firewall devel se parecer com algo assim:

  1. Aceitar conexões de sua rede para seu Squid na porta 3128
  2. Aceitar conexões de seu Squid para a Internet
  3. Rejeitar qualquer outra conexão.

É claro que você deverá adicionr outras regras que permitam ICMP ou retransmissão de emails. Mas estas são regras importantes para a navegação por proxy. Agora ou seus usuários utilizam o proxy para navegar pela internet ou simplesmente não se conectam. Combine a isto autenticação e finalmente você tem controle sobre o que as estações de trabalho fazem. Isto não é apenas util para torturar seus usuarios ou espiar onde eles andam navegando, mas também para manter spywares fora de ação por não saberem como usar o proxy ou por não possuirem o nome de usuário e senha necessárias para efetuar o login.

Outra vantagem de ter um proxy como este:

Você pode utilizar endereços de IP privados (como 10.0.0.0/8) em sua rede local. Tudo que o proxy precisa é pegar um IP que seja válido na internet.

-- Christoph Haas / translated by Marcelo Nascimento

WorkaroundOrg: AcessoSeguroWebComSquid (last edited 2005-11-07 20:10:17 by ChristophHaas)