Todos os sistemas operacionais 6 regiões offshore Checkout sem KYC
Hands-on Guia de campo

Hospede um serviço onion do Tor em um VPS offshore

Um serviço onion vira do avesso o problema de hospedagem de sempre: em vez de publicar um endereço e passar o resto do guia escondendo o que está por trás dele, você não publica nada. O servidor não abre nenhuma porta de entrada, não anuncia nenhum IP, não precisa de domínio nem de certificado — ele se conecta para fora, em direção à rede Tor, e os clientes alcançam o serviço através de um ponto de encontro que nenhum dos dois lados consegue rastrear até uma máquina. Essa é uma forma de esconder a origem mais forte do que qualquer proxy reverso, e combina naturalmente com uma máquina que, desde o início, não tem identidade nenhuma associada a ela. Este guia monta um serviço desses do início ao fim em um VPS offshore: um Tor atual, uma aplicação vinculada ao localhost, um torrc de três linhas, e o único arquivo cuja perda ou vazamento decide todo o jogo.

Atualizado em 2026-09-08 · 15 min de leitura · Operações de frota
Nesta página
  1. O que um serviço onion realmente é
  2. Quando é a ferramenta certa — e quando não é
  3. O que a configuração revela, e para quem
  4. Instale um Tor atual, não o que a sua distribuição traz
  5. Vincule a aplicação ao localhost e a mais nada
  6. Declare o serviço, depois leia o seu endereço
  7. Anuncie-o, rode os dois, e escolha um endereço memorável
  8. Mantenha em funcionamento: desempenho, monitoramento e higiene da chave
  9. Passo a passo
SP·01

O que um serviço onion realmente é

Um serviço onion do Tor é um servidor alcançável somente através da rede Tor, em um endereço que termina em .onion e é derivado de uma chave criptográfica, em vez de atribuído por um registrador. Não há consulta DNS, nenhum IP público em nenhum registro, e nenhum certificado TLS para comprar: o endereço de 56 caracteres é a chave pública do serviço, então a conexão é autenticada e criptografada de ponta a ponta por construção. Um visitante rodando o Tor Browser digita o endereço; a rede organiza um ponto de encontro criptografado; os dois lados conversam sem que nenhum dos dois descubra a localização do outro. Ninguém no meio do caminho — nem um relay, nem um provedor de internet, nem o provedor de hospedagem — vê as duas pontas da conversa ao mesmo tempo.

A consequência que importa para hospedagem é estrutural, não cosmética. Um servidor web normal precisa escutar em uma porta pública, o que significa que o seu endereço é descobrível, escaneável e, no fim das contas, vinculável a quem paga a conta. Um serviço onion não escuta em nada que a internet consiga alcançar. O Tor na máquina faz apenas conexões de saída, constrói circuitos até um punhado de pontos de introdução, e espera. O serviço está online e servindo tráfego enquanto o ss -tlnp não mostra nada vinculado a um endereço roteável. Essa inversão é o motivo inteiro para rodar um.

SP·02

Quando é a ferramenta certa — e quando não é

Recorra a um serviço onion quando a localização da máquina for parte do que você está protegendo: um site que precisa continuar acessível mesmo que o seu domínio clearnet seja apreendido, uma caixa de envio para fontes ou pesquisadores, um painel de administração que você prefere nem expor ao escaneamento constante da internet, ou um serviço cujo público já usa Tor e valoriza o fato de que você não consegue registrar um IP que nunca recebe. Também é a resposta honesta quando "esconder a origem" é o requisito de verdade — um proxy reverso na frente de um servidor clearnet só move o alvo, enquanto um serviço onion o elimina.

É a ferramenta errada quando os seus visitantes não vão ou não conseguem rodar Tor, quando você precisa da vazão bruta e da latência abaixo de 100 milissegundos de um servidor diretamente alcançável, ou quando a capacidade de ser encontrado é o objetivo — um endereço onion não é algo em que as pessoas esbarram vindo de um mecanismo de busca. Muitos operadores dividem a diferença e rodam os dois: um site normal para alcance e um serviço onion para os usuários que o preferem, servidos pela mesma aplicação. Cobrimos esse padrão mais adiante. Nada aqui substitui proteger a própria máquina; se ela for comprometida, a sua localização e o seu conteúdo vazam independentemente de como o serviço é publicado, então trate o checklist de proteção da primeira hora como um pré-requisito, não como um detalhe posterior.

SP·03

O que a configuração revela, e para quem

Vale ser preciso sobre o modelo de anonimato, porque "serviço onion" costuma ser interpretado como "impossível de rastrear", e a realidade é mais específica. Os clientes nunca descobrem o endereço IP do servidor — essa propriedade é forte, e é o ponto principal. O seu provedor de hospedagem, porém, ainda vê uma máquina na rede dele fazendo um fluxo constante de conexões criptografadas de saída para a rede Tor; ele não consegue ver o endereço onion, o conteúdo, nem os visitantes, mas consegue ver que a máquina fala Tor. Em um host mainstream vinculado à sua identidade, isso é um fio que vale a pena puxar. Em um VPS offshore, pago de forma anônima e sem nenhum nome registrado, isso não leva a lugar nenhum — motivo exato pelo qual as duas técnicas combinam tão bem.

Os modos de falha que realmente desanonimizam serviços onion quase nunca são o próprio Tor. São a aplicação vazando um IP real em uma página de erro, em um cabeçalho, em um e-mail que ela envia, ou em uma requisição de saída para um endpoint clearnet de analytics ou de atualização; um servidor mal configurado revelando o seu hostname ou fuso horário; ou correlação por parte do operador que reutiliza a mesma máquina, chave, ou estilo de escrita em uma identidade clearnet. A criptografia se sustenta; é na tubulação ao redor dela que as pessoas se dão mal. Cada passo abaixo foi escrito para manter essa tubulação bem fechada — vincular ao localhost, não enviar nada em texto claro para fora, e manter a identidade real da máquina fora dela, conforme manter seu nome fora de um servidor.

SP·04

Instale um Tor atual, não o que a sua distribuição traz

As distribuições congelam o Tor na versão que acompanhava o lançamento, e as defesas de serviço onion evoluem rápido — a proteção contra negação de serviço nos pontos de introdução, a autorização de cliente v3 e várias correções de estabilidade chegaram todas em versões mais novas do que o que um Debian ou Ubuntu estável traz por padrão. Instale a partir do repositório assinado do próprio Tor Project, para acompanhar os lançamentos atuais e receber atualizações de segurança no cronograma deles, não no da distribuição. O trecho abaixo detecta automaticamente o codinome do seu lançamento e fixa o repositório à chave de assinatura do projeto, de forma que um atacante que adultere o espelho não consiga te entregar um pacote rebaixado.

O Tor roda sem privilégios como o usuário debian-tor no Debian e no Ubuntu, entra em uma sandbox e não precisa de nenhum privilégio de rede especial — ele disca para fora como qualquer cliente. Não há nada para abrir no firewall para o serviço onion em si, o que é a primeira surpresa agradável de todo esse exercício: o seu firewall de bloqueio padrão pode continuar exatamente tão rígido quanto já era.

SP·05

Vincule a aplicação ao localhost e a mais nada

Um serviço onion é uma porta de entrada para um serviço local comum — um servidor web, uma aplicação, um daemon SSH, qualquer coisa que fale TCP. A regra que mantém tudo isso seguro é que esse serviço local precisa escutar somente na interface de loopback, 127.0.0.1. Se ele também escutar no IP público, você recriou silenciosamente o problema que o serviço onion deveria resolver: o conteúdo agora é alcançável e identificável diretamente, e um escaneamento que associe o seu servidor clearnet ao seu conteúdo onion desfaz o anonimato em uma única requisição. Vincule ao loopback, confirme com ss -tlnp, e deixe o Tor ser a única coisa que jamais se conecta a essa porta.

Como o tráfego entre o Tor e a sua aplicação fica todo em 127.0.0.1, ele nunca toca a rede e não precisa de TLS próprio — o circuito Tor já criptografa tudo de ponta a ponta. Não coloque um certificado autoassinado no listener de loopback; isso só adiciona uma superfície identificável e não traz nenhum ganho. Mantenha a aplicação sem graça: nenhum redirecionamento para o clearnet, nenhum link absoluto do tipo https://your-domain embutido nos templates, nenhuma fonte ou analytics de terceiros que faça o navegador do visitante sair do onion e alcançar a web aberta.

SP·06

Declare o serviço, depois leia o seu endereço

O serviço onion são três linhas de torrc: um diretório onde o Tor guarda o material da chave, e um mapeamento de uma porta virtual no endereço onion para a porta local em que a sua aplicação escuta. Na primeira reinicialização, o Tor gera um par de chaves Ed25519 nesse diretório e escreve o arquivo hostname — o endereço .onion de 56 caracteres que você vai divulgar. Esse endereço é permanente enquanto você mantiver a chave. Perca a chave e o endereço se vai para sempre; vaze-a e qualquer outra pessoa pode se passar pelo seu serviço. Trate o HiddenServiceDir como as joias da coroa: 0700, de propriedade do usuário do Tor, com backup criptografado e fora da máquina.

Duas configurações merecem lugar ao lado do mapeamento. HiddenServiceEnableIntroDoSDefense 1 permite que os seus pontos de introdução limitem a taxa de inundações de conexão antes que elas cheguem à sua máquina, o que é o mais próximo que um serviço onion tem de uma proteção contra DDoS. Fixar HiddenServiceVersion 3 deixa a versão explícita e preparada para o futuro. Se o serviço deve ser privado em vez de público, a autorização de cliente v3 o restringe a quem possui uma chave que você distribui fora de banda — uma forma limpa de rodar um painel de administração que simplesmente não responde a ninguém sem a credencial.

SP·07

Anuncie-o, rode os dois, e escolha um endereço memorável

Se você também roda um site clearnet, avise o Tor Browser sobre a versão onion com o cabeçalho de resposta Onion-Location (ou a meta tag HTML equivalente). Navegadores com suporte a onion então oferecem o .onion aos visitantes automaticamente — a forma padrão como sites de grandes jornais e mecanismos de busca divulgam o deles. Servir a mesma aplicação tanto em um domínio quanto em um endereço onion é a norma, não um caso exótico: uma base de código, um banco de dados, duas portas de entrada, com o lado clearnet ficando atrás do costumeiro proxy reverso que esconde a origem e o lado onion não expondo nada.

O endereço padrão é uma string aleatória de 56 caracteres, que é segura mas difícil de memorizar. Um endereço vanity permite forçar por força bruta uma chave cuja codificação base32 comece com um prefixo escolhido — alguns caracteres legíveis é rápido, mas cada caractere adicional multiplica o trabalho por 32, então qualquer coisa além de sete ou oito letras vira um trabalho computacional sério. Gere chaves vanity em uma máquina local confiável, nunca no servidor, e coloque a chave resultante no HiddenServiceDir exatamente como você restauraria um backup. Um prefixo reconhecível também neutraliza um ataque real: clones de phishing que contam com o fato de ninguém ler uma parede de caracteres aleatórios.

SP·08

Mantenha em funcionamento: desempenho, monitoramento e higiene da chave

Uma conexão onion atravessa seis relays em vez do zero habitual, então a latência é maior e a vazão menor do que em um servidor diretamente alcançável — isso é física, não má configuração, e nenhum ajuste remove isso. Resista à tentação dos modos single-hop ou não anônimos para recuperar velocidade; eles trocam exatamente a propriedade pela qual você construiu tudo isso. O que você pode fazer é manter o Tor atualizado, deixar a defesa contra DoS nos pontos de introdução ligada, colocar cache na frente de um serviço movimentado para que cada requisição exija menos trabalho, e dimensionar a máquina com folga de CPU, porque a criptografia do Tor não é de graça. Um VPS offshore modesto a partir de $8.00/mês lida com um site onion típico sem dificuldade.

No dia a dia operacional, três hábitos mantêm um serviço onion saudável. Observe o journalctl -u tor@default em busca de erros de alcançabilidade e de publicação de descritor, em vez de presumir que silêncio significa saúde. Faça backup do HiddenServiceDir no dia em que você o cria e depois de qualquer mudança, criptografado e fora da máquina, porque essa chave é a única coisa que você não consegue regenerar. E mantenha a identidade operacional da máquina limpa — uma chave nova em um VPS anônimo novo vale pouco se os mesmos hábitos do operador a associarem de volta a um eu clearnet. O serviço vai rodar tranquilamente por anos sem ser tocado; a disciplina está na tubulação ao redor dele, não no serviço em si.

SP·09

Passo a passo

  1. 01

    Comece com uma máquina protegida e anônima

    Implante um VPS offshore — online em cerca de 15 min — e faça primeiro o trabalho chato e essencial: um usuário nomeado com sudo, SSH só por chave, um firewall de bloqueio padrão, e atualizações de segurança automáticas. O serviço onion não adiciona nada que você precise abrir nesse firewall, então uma máquina travada continua travada. Não pule essa parte; um endereço onion na frente de um servidor comprometido não esconde nada.

    ssh admin@203.0.113.10
    sudo apt update && sudo apt full-upgrade -y
    # firewall stays default-deny; the onion service needs no inbound port
    sudo ufw status verbose
  2. 02

    Instale o Tor a partir do repositório do Tor Project

    Adicione o repositório assinado do projeto para rodar um Tor atual com as defesas mais recentes de serviço onion, depois instale-o. O codinome é detectado a partir de /etc/os-release, e o repositório é fixado à chave de assinatura do Tor, para que um espelho adulterado não consiga te rebaixar de versão.

    sudo apt install -y apt-transport-https wget gpg
    . /etc/os-release
    wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc \
      | gpg --dearmor | sudo tee /usr/share/keyrings/tor.gpg >/dev/null
    echo "deb [signed-by=/usr/share/keyrings/tor.gpg] https://deb.torproject.org/torproject.org $VERSION_CODENAME main" \
      | sudo tee /etc/apt/sources.list.d/tor.list
    sudo apt update && sudo apt install -y tor deb.torproject.org-keyring
  3. 03

    Vincule o seu serviço somente ao localhost

    Aponte o que quer que você esteja publicando para a interface de loopback e para mais nenhum lugar. Aqui o nginx serve um site estático em 127.0.0.1:8080; o mesmo princípio vale para qualquer aplicação — vincule a 127.0.0.1, não a 0.0.0.0. Recarregue, depois comprove com ss que nada está escutando em um endereço roteável.

    # /etc/nginx/sites-available/onion.conf
    server {
        listen 127.0.0.1:8080;
        server_name _;
        root /var/www/onion;
        index index.html;
    }

    Ative-o, recarregue, e confirme que o vínculo é somente loopback:

    sudo ln -s /etc/nginx/sites-available/onion.conf /etc/nginx/sites-enabled/
    sudo nginx -t && sudo systemctl reload nginx
    ss -tlnp | grep 8080   # must show 127.0.0.1:8080, never 0.0.0.0:8080
  4. 04

    Declare o serviço onion no torrc

    Adicione o serviço ao /etc/tor/torrc: um diretório de chave e um mapeamento de porta da porta virtual 80 do onion para a sua porta local 8080. Ative a defesa contra DoS nos pontos de introdução e fixe a versão do endereço. Depois reinicie o Tor — no Debian e no Ubuntu a instância em execução é a tor@default.

    # /etc/tor/torrc
    HiddenServiceDir /var/lib/tor/onion-www/
    HiddenServicePort 80 127.0.0.1:8080
    HiddenServiceVersion 3
    HiddenServiceEnableIntroDoSDefense 1
    
    sudo systemctl restart tor@default
  5. 05

    Leia o endereço e tranque a chave

    O Tor já criou o material da chave e escreveu o seu endereço. Leia-o, divulgue-o — e garanta que o diretório esteja em 0700 e pertença ao usuário do Tor, o que o Tor já impõe, mas que uma restauração descuidada pode quebrar. O arquivo hs_ed25519_secret_key nesse diretório é a sua identidade; nada mais é.

    sudo cat /var/lib/tor/onion-www/hostname
    # example: 2gzyxa5ihm7nsggfxnu52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.onion
    
    sudo ls -l /var/lib/tor/onion-www/
    # hostname  hs_ed25519_public_key  hs_ed25519_secret_key
    sudo chown -R debian-tor:debian-tor /var/lib/tor/onion-www
    sudo chmod 700 /var/lib/tor/onion-www
  6. 06

    Teste pelo Tor, depois anuncie

    Verifique o serviço a partir de uma máquina que tenha o Tor rodando, usando torsocks para que a requisição passe pela rede em vez do clearnet. Assim que ele responder, opcionalmente aponte os visitantes clearnet para a versão onion com um cabeçalho Onion-Location no seu site normal.

    # from any box running tor:
    torsocks curl -sSI http://2gzyxa5ihm7nsggfxnu52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.onion/ | head
    
    # advertise the onion from your clearnet nginx (inside the https server block):
    add_header Onion-Location "http://2gzyxa5ihm7nsggfxnu52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.onion$request_uri";
  7. 07

    Faça backup da chave e escreva o runbook

    O endereço nasce e morre com o diretório da chave. Arquive-o assim que ele existir, mova o arquivo para fora da máquina, para um armazenamento criptografado, e tenha em mente que restaurá-lo em qualquer lugar reproduz exatamente o mesmo endereço .onion. Depois anote os dois comandos que você realmente vai precisar daqui a seis meses — onde está a chave e como checar a saúde do serviço — porque ele roda intocado por tempo suficiente para que você esquecer.

    sudo tar czf onion-www-key.tar.gz -C /var/lib/tor onion-www
    # copy onion-www-key.tar.gz to encrypted off-box storage, then delete the local copy
    
    # health check any time:
    sudo systemctl status tor@default
    sudo journalctl -u tor@default --since "1 hour ago" | grep -i "onion\|error"
SP·10 — PERGUNTAS FREQUENTES

Respostas rápidas

O meu provedor de hospedagem consegue ver o meu endereço .onion ou o que eu hospedo?

Não para as duas coisas, com uma ressalva que vale a pena deixar clara. O provedor vê uma máquina fazendo conexões criptografadas de saída para a rede Tor — ele não consegue derivar o endereço onion a partir disso, não vê o conteúdo, e nunca vê os seus visitantes, porque a máquina só disca para fora e o ponto de encontro acontece dentro da rede. O que ele consegue observar é que o servidor fala Tor. Isso não é problema nenhum em um VPS offshore sem nenhuma identidade associada a ele, e é um fio potencial em um host mainstream vinculado ao seu nome — motivo exato pelo qual hospedagem anônima e serviços onion são mais fortes juntos do que cada um sozinho.

Eu preciso de um nome de domínio ou de um certificado TLS?

De nenhum dos dois. O endereço .onion é derivado da própria chave pública do serviço, então ele não precisa de registrador e não há nada para renovar ou vazar. A conexão é autenticada e criptografada de ponta a ponta pelo próprio Tor, motivo pelo qual os navegadores tratam origens onion como seguras mesmo sem certificado. Você pode obter um certificado que liste o seu endereço onion se quiser o cadeado na interface, mas isso é opcional e não traz nenhuma segurança adicional de transporte — não coloque um certificado autoassinado no listener de loopback achando que isso ajuda.

Serviço onion ou proxy reverso — qual realmente esconde a origem?

O serviço onion, e não é nem perto. Um proxy reverso esconde o seu IP de origem de visitantes casuais, mas a origem continua sendo um servidor escutando, escaneável; qualquer um que encontre o endereço dela — por uma má configuração, um registro DNS vazado, ou uma aplicação que liga para casa — chega até ela diretamente. Um serviço onion não tem origem alcançável para ser encontrada: a máquina não escuta em nada roteável e só disca para fora. Use um proxy reverso para esconder um servidor clearnet que você ainda quer rápido e público; use um serviço onion quando a origem não deveria existir como alvo de jeito nenhum. Muitos operadores rodam os dois para a mesma aplicação.

Por que o meu serviço onion é mais lento do que um site normal?

Porque uma conexão até ele atravessa seis relays do Tor em vez de ir direto ao seu servidor, o que adiciona latência e limita a vazão. Isso é inerente ao funcionamento do anonimato, não uma falha na sua configuração, e nenhum ajuste remove isso. Dá para suavizar: mantenha o Tor atualizado, use cache de forma agressiva para que cada requisição exija menos trabalho, mantenha as páginas leves, e dê à máquina CPU suficiente para a criptografia do Tor. Evite os modos onion single-hop ou não anônimos — eles recuperam velocidade descartando exatamente a privacidade de localização pela qual você construiu o serviço.

Posso rodar o mesmo site tanto no clearnet quanto em .onion?

Sim, e é o padrão comum. Uma aplicação escuta no loopback; tanto o seu front-end clearnet quanto o serviço onion fazem proxy para ela, então há uma única base de código e um único banco de dados atrás de duas portas de entrada. Anuncie o onion para usuários do Tor Browser com um cabeçalho Onion-Location do lado clearnet. A única disciplina que importa é evitar vazamentos que liguem os dois — nenhuma URL clearnet fixa no código, nenhum analytics ou fonte de terceiros, e nenhuma página de erro que imprima o hostname ou IP real do servidor.

O que acontece se eu perder a chave, e como funcionam os endereços vanity?

Perca o HiddenServiceDir e o endereço se vai permanentemente — não há recuperação nem registrador a quem recorrer, motivo pelo qual o passo de backup não é opcional. Restaurar esse diretório em qualquer máquina reproduz o mesmo .onion de forma idêntica. Um endereço vanity é uma chave obtida por força bruta até que a sua codificação base32 comece com um prefixo escolhido por você; um prefixo curto e legível é rápido, mas cada caractere extra multiplica a busca por 32, então strings personalizadas longas viram trabalhos computacionais de verdade. Gere chaves vanity em uma máquina local confiável, depois instale a chave como se estivesse restaurando um backup — nunca as gere no servidor.

Coloque em prática

VPS online em 15 min, dedicado entregue em 2–12 h. Recarregue a partir de $30.00 em cripto — sem identidade vinculada.

Implante um VPS