Um dia destes eu estava rodando uns scripts de testes em umas aplicações e precisava de IP’s válidos diferentes para o sucesso dos testes. Depois de utilizar vários servidores proxys disponíveis na internet resolvi testar o Tor, que já tinha lido sobre, mas nunca tinha usado.
O Tor (The Onion Router) é um software livre que permite a navegação anônima na internet. A rede Tor é uma rede de túneis http (com tls) sobrejacente à Internet, onde os roteadores da rede são computadores de usuários comuns rodando um programa e com acesso web (apenas). O objetivo principal do projeto é garantir o anonimato do usuário que está acessando a web.
É muito utilizado para quem precisa que suas informações não sejam divulgadas como jornalistas, ativistas, crackers, serviços de inteligência e etc. A idéia básica por trás do software é que quando utilizado, ao invés de seguir uma rota direta entre você e o destino, todos os dados são transmitidos de forma aleatória pela Internet através de servidores e computadores voluntários que utilizam o serviço. De tempos em tempos esta rota se altera.
É um software que pode ser usado tanto para efeito de testes, para preservar seus dados mas também pode ser utilizado por criminosos, para transmissão de conteúdo ilegal e etc.
É claro que também existem problemas. Um deles é que por trafegar por diversos hosts a conexão acaba ficando lenta dependendo de fatores como a a velocidade de conexão dos micros utilizados pela rota por exemplo. Outra questão é que a rota é criptografada apenas até o último host que pertence a rede Tor, depois os dados não são mais criptografados e passam através da Internet normalmente. Desta forma evite utilizar algum serviço crítico que não implementa uma criptografia da mesma forma que você faria se utiliza-se a internet normalmente.
Também é possível, depois do Tor instalado, configurar o serviço para que seu micro esteja na rede Tor colaborando para outras pessoas utilizarem o serviço. Isto pode ser um problema pois se alguém está utilizando a rede para algo inadequado, como por exemplo disponibilizar conteúdos protegidos por direito autoral ilegalmente, o IP do seu computador que constará nos Logs de alguma auditoria de algum órgão fiscalizador.
Nos reposítórios do Ubuntu é possível encontrar os pacotes para a instação. No terminal digite:
leoribeiro@workstation:$
sudo apt-get install tor polipo
Agora o tor está instalado e rodando. O Tor trabalha no Linux como um servidor proxy utilizando o protocolo Socks5. Vamos utilizar aqui, para fazer a interface entre o browser que será utilizado para navegação anônima e o Tor, um servidor proxy com suporte a cache chamado Polipo.
Como o Polipo Proxy funciona
Para configurar o polipo para enviar as requisições do browser até o Tor vá em /etc/polipo/config e altere as seguintes linhas com as configurações do Tor:
socksParentProxy = “localhost:9050”
socksProxyType = socks5
Agora reinicie o daemon do Polipo:
leoribeiro@workstation:$
sudo /etc/init.d/polipo restart
Desta forma você terá o Polipo executando em sua máquina rodando na porta 8123 enviando as requisições ao Tor via Socks5. Agora é só configurar seu browser com o HTTP proxy localhost:8123.
Seu Tor está configurado para você navegar anonimamente, mas a rede pode ficar muito lenta pois você ainda não compartilha sua conexão com a rede Tor. Quando você compartilha sua conexão, outras pessoas podem utilizar seu micro para nevagar anônimamente. Se quiser ativar essa opção vá em /etc/tor/torrc e adicione estas linhas:
ORPort 9001
DirPort 9030
Ao meu ver o tor deve apenas ser utilizado para tarefas que necessitam da navegação anônima na internet, porque a rede é muito lenta e as vezes não é possível nem navegar corretamente. Para verificar se você está na rede Tor entre no site do projeto.