Navegação segura · 4 min read · Jan 26, 2026

Navegação Segura e Privada com Squid

Versão 1.0

Autor: Joe Topjian

Navegar em um site que suporta SSL é uma maneira definitiva de garantir que ninguém possa espionar o que você está fazendo – o que é uma coisa boa quando você está fazendo algo pessoal como checar e-mails pela web ou comprar algo na amazon. Mas se você está apenas fazendo coisas como ler as notícias diárias ou checar horários de filmes, a privacidade é tão importante assim? Os ultra-paranoicos darão uma resposta retumbante “sim” a essa pergunta, enquanto a maioria das pessoas apenas dará de ombros. Eu me encontro entre essas duas partes. Em casa, enquanto leio as notícias, não me importo se o tráfego está criptografado ou não. No entanto, quando estou em um ponto de wi-fi público, isso me incomoda um pouco.

A maioria das áreas públicas que permitem acesso à internet não têm absolutamente nenhuma segurança em vigor. Precisa de um bom alerta? Na próxima vez que você estiver em um hotspot público, leve uma cópia das ferramentas dsniff.

Este artigo mostrará uma maneira de se proteger de algo assim – de certa forma. Este artigo mostrará apenas como proteger seu tráfego web. Se você ainda decidir conversar com seu CEO pelo AIM sobre algum produto ultra-secreto que será lançado na próxima semana enquanto espera seu próximo voo, isso não irá salvá-lo. O Squid pode, claro, fazer proxy de solicitações para outros aplicativos além do HTTP, mas o HTTP é tudo o que vou cobrir. Talvez eu aborde outros aplicativos em outro artigo.

OK, vamos começar. Aqui está o que precisaremos:

  • Um servidor rodando Squid em alguma outra rede.
  • Um laptop com suporte a ssh e redirecionamento de porta.

O que vamos fazer é configurar um servidor Squid em algum lugar fora da rede em que estamos atualmente. O Squid aceitará apenas conexões do próprio servidor – sem conexões externas. Então, como vamos usá-lo? Vamos criar um túnel SSH para ele. Uma vez que o túnel é criado, simplesmente configuramos nosso navegador para usar um servidor proxy com o endereço do nosso túnel SSH. Agora, qualquer tráfego web saindo do nosso laptop para o nosso servidor Squid será criptografado.

Mas e quanto do servidor Squid para a página da web real? Essas informações não estarão criptografadas, infelizmente. Mas ei, pelo menos conseguimos sair da LAN desprotegida de forma segura.

Estarei usando Debian Sarge para o servidor Squid, mas você é mais que bem-vindo para usar qualquer distribuição que desejar. Após a instalação do Squid, a configuração será exatamente a mesma. Para instalar o Squid no Debian, basta fazer:

apt-get install squid

A configuração padrão para Debian (e talvez outras distribuições também – é melhor verificar!) é permitir apenas conexões do localhost. Isso não prejudica nada, então podemos deixá-la como está. No entanto, ainda precisamos de uma maneira de nos conectar externamente. Para isso, adicionaremos uma acl que nos pedirá uma senha e, se formos autenticados, nos deixará entrar. Vamos adicioná-la logo antes da parte “deny all” para que fique algo assim:

acl localhost src 127.0.0.1/255.255.255.255

http_access allow localhost

http_access allow password

http_access deny all

Por padrão, o Squid escuta na porta 3128. Pessoalmente, gosto mais da 8080, então vamos mudá-la com:

http_port 8080

Em seguida, precisamos configurar a autenticação para o Squid. Existem vários métodos de autenticação diferentes que vêm com o pacote Debian e podem ser visualizados com:

ls /usr/lib/squid/*auth

Usaremos o módulo pam_auth. Isso permitirá que qualquer pessoa que tenha uma conta de shell também possa usar o servidor Squid. Procure pela seção auth_param na configuração e adicione estas linhas:

auth_param basic program /usr/lib/squid/pam_auth

auth_param basic children 5

auth_param basic realm Squid proxy-caching web server

auth_param basic credentialsttl 2 hours

Em seguida, procure por esta linha e descomente-a:

acl password proxy_auth REQUIRED

Agora crie um módulo pam chamado /etc/pam.d/squid que contenha:

auth required /lib/security/pam_unix.so

account required /lib/security/pam_unix.so

Você precisará dar a este arquivo acesso SUID, então chmod 4755. Sim, eu sei que essa não é a melhor maneira de fazer isso, mas é a menos complicada. Você é mais que bem-vindo para pesquisar os outros métodos por conta própria.

O Squid deve estar pronto para funcionar. Em seguida, certifique-se de que você tem acesso de shell ao servidor via SSH. Não importa se você usa uma senha, frase de acesso ou frase de acesso em branco. Para configurar o túnel, execute isto:

ssh -L 8080:squidhost:8080 username@squidhost

Você será solicitado a autenticação e, se for bem-sucedido, parecerá que você fez login na máquina remota. Se você abrir outra janela e digitar

telnet localhost 8080

Você verá que agora está se comunicando com o squid no servidor remoto.

Finalmente, diga ao seu navegador para usar o túnel SSH como um proxy. Não vou abordar cada navegador individualmente aqui, mas basicamente estará em algum lugar nas preferências. Para o nome do host, digite localhost e para a porta, digite 8080.

Agora, sempre que você navegar para uma página da web, será solicitado a autenticação. Digite suas informações de conta de shell e você estará pronto para ir. O navegador pode dar um aviso sobre autenticação através de texto simples – ignore isso. Ele estará viajando através do nosso túnel SSH, então estará criptografado.

Parabéns! Agora você pode navegar na web sem se preocupar com alguém espionando você. Se alguém tiver comentários, correções ou maneiras de melhorar este método, por favor, me avise!Localização original deste documento:

http://adminspotting.net/howtos/securesquid.html

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.