SISTEMAS MONITORADOS · CONHECIMENTO COMPARTILHADO DEFESA COMEÇA COM INFORMAÇÃO
K KerberosTechCibersegurança sem mistério

Artigo

Do laboratório
André Bueno

Como Hospedar um Site na Deep Web (Onion Service) com Ubuntu Server

 

Em 2011 neste blog ensinei a como hospedar um site na deep web, era um método simples usando uma hospedagem que deixou de existir a tempos, agora vamos atualizar, agora vamos usar um servidor ubuntu.

O ecossistema da rede Tor evoluiu drasticamente desde aquela época. Os antigos endereços onion de v2 foram descontinuados devido a fragilidades criptográficas, dando espaço aos modernos v3 Onion Services, que utilizam curvas elípticas robustas e oferecem criptografia de ponta a ponta sem expor o endereço IP real do servidor de origem.

Neste tutorial técnico, vamos direto ao ponto: como configurar um servidor Ubuntu do zero para hospedar seu próprio serviço oculto com segurança e estabilidade.

Passo 1: Atualização do Sistema e Instalação do Tor

O primeiro passo é garantir que seu ambiente Ubuntu Server esteja limpo, atualizado e com os pacotes oficiais do repositório do Tor configurados.

Bash
sudo apt update && sudo apt upgrade -y
sudo apt install tor -y

Após a instalação, o serviço do Tor rodará em segundo plano, mas precisamos ajustar as permissões e o arquivo de configuração (torrc) para habilitar o nosso serviço oculto (Hidden Service).

Passo 2: Configuração do Onion Service v3

Abra o arquivo de configuração do Tor utilizando seu editor de texto preferido (como o nano):

Bash
sudo nano /etc/tor/torrc

Procure pelas linhas comentadas referentes a HiddenServiceDir. Descomente e ajuste as seguintes linhas no final do arquivo:

Plaintext
HiddenServiceDir /var/lib/tor/hidden_service/
HiddenServicePort 80 127.0.0.1:80
  • HiddenServiceDir: Diretório onde o Tor gerará automaticamente as chaves criptográficas e o seu endereço .onion.

  • HiddenServicePort: Mapeia a porta pública 80 do seu serviço oculto para o servidor web local rodando na porta 80 (como o Nginx ou Apache).

Salve o arquivo (Ctrl+O, Enter e Ctrl+X) e reinicie o serviço do Tor:

Bash
sudo systemctl restart tor

Passo 3: Obtendo o seu Endereço .onion v3

Assim que o Tor é reiniciado, ele gera automaticamente o par de chaves e o arquivo com o domínio público da sua aplicação. Para visualizar o seu novo endereço .onion, execute:

Bash
sudo cat /var/lib/tor/hidden_service/hostname

O terminal exibirá uma string alfanumérica de 56 caracteres seguida por .onion. Este é o link permanente e exclusivo do seu site na rede Tor.

Passo 4: Instalação e Configuração do Servidor Web (Nginx)

Para entregar as páginas HTML aos visitantes, precisamos de um servidor web leve e seguro rodando localmente na porta 80. O Nginx é ideal para essa função:

Bash
sudo apt install nginx -y

Para garantir que o Nginx responda apenas às requisições locais vindas do Tor (evitando vazamentos de IP ou acessos externos diretos caso a máquina esteja em uma VPS pública), edite o arquivo de configuração padrão do Nginx:

Bash
sudo nano /etc/nginx/sites-available/default

Certifique-se de que a diretiva listen escute estritamente no endereço 127.0.0.1:

Nginx
server {
    listen 127.0.0.1:80;
    server_name localhost;

    root /var/www/html;
    index index.html index.nginx-debian.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

Reinicie o Nginx para aplicar as alterações:

Bash
sudo systemctl restart nginx

Passo 5: Publicando o Conteúdo e Validação

Agora, basta colocar os arquivos do seu site no diretório raiz configurado (/var/www/html). Por exemplo, você pode editar o arquivo padrão de boas-vindas:

Bash
sudo nano /var/www/html/index.html

Substitua o conteúdo por uma página simples em HTML indicando que seu serviço oculto está ativo. Para testar o acesso, utilize um navegador compatível (como o Tor Browser) e acesse o endereço .onion gerado no Passo 3.

Boas Práticas de Hardening e Segurança Operacional

Hospedar um serviço na rede Tor exige rigor técnico para evitar o comprometimento do servidor de origem (Origin Disclosure):

  1. Desative Logs Desnecessários: No Nginx e no Ubuntu, evite gravar endereços IP ou informações excessivas nos logs de acesso para preservar o anonimato de quem visita o site.

  2. Mantenha o Firewall Ativo (UFW): Bloqueie todas as portas de entrada desnecessárias na interface de rede pública (WAN), permitindo apenas conexões SSH restritas por chave pública ou portas estritamente necessárias.

  3. Atualizações Constantes: Monitore patches de segurança do Ubuntu Server para evitar explorações de vulnerabilidades locais que permitam escalar privilégios.