Ao tentar seguir, mencionar ou ver o perfil de um usuário em outra instância do Mastodon, você pode ver a mensagem de erro “Could Not Fetch Remote Account”. Esse erro geralmente significa que sua instância local não conseguiu completar a comunicação com o servidor remoto para baixar os dados do perfil. A causa costuma ser uma falha temporária de federação, um bloqueio de rede ou um registro DNS desatualizado na instância remota. Este artigo explica por que o erro ocorre e fornece um conjunto claro de etapas para resolvê-lo em sua própria instância.
Principais Pontos: Corrigindo o Erro de Busca de Conta Remota no Mastodon
- Painel de administração do Mastodon > Federação > Resolver: Tente buscar manualmente a conta remota após uma tentativa falha.
- Painel de administração do Mastodon > Sidekiq > Dead: Verifique se há jobs em segundo plano travados que bloqueiam a comunicação de federação.
- Endpoint .well-known/host-meta da instância remota: Verifique se o servidor remoto expõe esse endpoint corretamente para que a federação funcione.
Por que o Mastodon não consegue buscar uma conta remota
O Mastodon depende do ActivityPub, um protocolo descentralizado, para trocar dados entre instâncias. Quando você pesquisa ou interage com um usuário em outra instância, seu servidor envia uma requisição GET para o endpoint da API do servidor remoto, geralmente https://remoteinstance.com/users/username. O servidor remoto deve responder com um documento JSON-LD contendo os dados do perfil do usuário, incluindo nome de exibição, biografia, avatar e chave pública.
O erro “Could Not Fetch Remote Account” ocorre quando seu servidor não consegue receber ou interpretar esse documento JSON-LD. Várias condições podem causar essa falha:
Bloqueios em Nível de Rede
A instância remota pode estar bloqueando o endereço IP do seu servidor. Isso pode acontecer se sua instância foi sinalizada como spam ou se o administrador remoto adicionou manualmente seu servidor a uma lista de bloqueio. Algumas instâncias também usam firewalls ou Cloudflare para restringir o tráfego de faixas de IP desconhecidas.
Falha na Resolução de DNS
O resolvedor DNS do seu servidor pode não conseguir resolver o nome de domínio da instância remota. Isso pode acontecer se os registros DNS do domínio remoto estiverem mal configurados, expirados ou temporariamente inacessíveis. Sem um registro A ou AAAA válido, seu servidor não consegue abrir uma conexão TCP.
Problemas com Certificado SSL/TLS
O Mastodon exige HTTPS para todo o tráfego de federação. Se o certificado SSL da instância remota estiver expirado, inválido ou autoassinado, seu servidor rejeitará a conexão e não conseguirá buscar a conta. Isso é comum em pequenas instâncias pessoais que usam Let’s Encrypt mas não renovaram seus certificados a tempo.
Cache Desatualizado ou Corrompido no Seu Servidor
Sua instância armazena em cache os dados de perfis remotos para reduzir o uso de banda. Se a entrada de cache para um usuário remoto ficar corrompida ou desatualizada, o Mastodon pode se recusar a buscar os dados novamente e retornar o erro. Isso é especialmente comum após um usuário remoto mudar para outra instância ou excluir sua conta.
Passos para Resolver o Erro de Busca de Conta Remota
Siga estes passos em ordem. Teste após cada passo para ver se o erro desaparece.
- Limpe o cache da conta remota no seu servidor
Abra o painel de administração do Mastodon. Vá para Preferências > Administração > Federação. Na caixa de pesquisa, digite o endereço completo do usuário remoto (por exemplo,@usuario@instanciaremota.com). Se a conta aparecer nos resultados, clique no nome da conta para abrir a página de detalhes. Clique em Resolver para forçar seu servidor a buscar novamente os dados do perfil. Se a conta não aparecer, seu servidor não tem entrada em cache, então prossiga para o próximo passo. - Verifique o Sidekiq em busca de jobs mortos ou travados
As requisições de federação são processadas por workers em segundo plano do Sidekiq. Se um worker travar ou um job ficar preso, seu servidor nunca completa a busca. No painel de administração, vá para Preferências > Administração > Sidekiq. Clique na aba Dead. Se você vir jobs relacionados à busca de contas remotas, clique em Retry all. Em seguida, clique na aba Queues e verifique se a fila chamadapulloudefaultnão está sobrecarregada. Se a fila tiver mais de 1000 jobs pendentes, reinicie o serviço Sidekiq:sudo systemctl restart sidekiqno seu servidor. - Verifique a resolução de DNS a partir do seu servidor
Conecte-se via SSH ao seu servidor Mastodon. Executedig instanciaremota.com +short. Se o comando retornar um endereço IP, o DNS está funcionando. Se não retornar nada ou der erro, seu servidor não consegue resolver o domínio. Verifique seu arquivo/etc/resolv.confe certifique-se de que ele aponta para um servidor DNS funcional, como 8.8.8.8 ou 1.1.1.1. Você também pode limpar o cache DNS local comsudo systemd-resolve --flush-cachesse estiver usando systemd-resolved. - Teste o endpoint de federação da instância remota
Do seu servidor, executecurl -I https://instanciaremota.com/.well-known/host-meta. Uma resposta bem-sucedida retorna o status HTTP 200 e um tipo de conteúdoapplication/xrd+xml. Se você receber um 403 ou 404, a instância remota não está expondo o endpoint necessário. Se receber um erro de certificado, executecurl -v https://instanciaremota.come procure porSSL certificate problemna saída. Entre em contato com o administrador da instância remota para resolver esses problemas. - Force manualmente uma busca via CLI do Mastodon
Se as verificações no painel de administração e no Sidekiq não funcionarem, use a interface de linha de comando. Conecte-se via SSH ao seu servidor. ExecuteRAILS_ENV=production bin/tootctl accounts refresh instanciaremota.com. Este comando força o Mastodon a buscar novamente todas as contas remotas dessa instância. Substituainstanciaremota.compelo domínio real. Aguarde 30 segundos e tente pesquisar pelo usuário remoto novamente. - Reinicie o serviço web do Mastodon
Como passo final, reinicie toda a pilha do Mastodon:sudo systemctl restart mastodon-web. Isso limpa quaisquer caches em memória e recarrega a configuração de federação. Após a reinicialização, tente visualizar o perfil remoto novamente.
Se o Erro Persistir Após a Correção Principal
Instância remota bloqueou seu servidor
Algumas instâncias mantêm listas de bloqueio que impedem a federação com determinados domínios. Você pode verificar se seu servidor está bloqueado acessando o endpoint da API da instância remota diretamente do seu navegador: https://instanciaremota.com/api/v1/instance/domain_blocks?domain=suainstancia.com. Se a resposta incluir seu domínio, o administrador remoto bloqueou sua instância. Você deve contatar o administrador remoto e solicitar a remoção da lista de bloqueio.
Conta do usuário remoto foi excluída ou movida
Se o usuário remoto excluiu sua conta ou mudou para outra instância, o Mastodon não consegue buscar o perfil porque ele não existe mais na URL original. Verifique o status do usuário visitando a página de perfil diretamente em um navegador web. Se a página mostrar um 404 ou um redirecionamento, peça ao usuário o endereço da nova conta.
Firewall do seu servidor está bloqueando conexões de saída
O firewall do seu servidor pode estar bloqueando tráfego HTTPS de saída na porta 443. Execute sudo iptables -L -n para listar as regras atuais. Procure por uma regra REJECT ou DROP na cadeia OUTPUT para a porta 443. Se encontrar uma, adicione uma regra ACCEPT: sudo iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT. Salve as regras para que persistam após reinicializações.
Busca de Federação no Mastodon: Instância Local vs Instância Remota
| Item | Instância Local | Instância Remota |
|---|---|---|
| Papel no erro | Inicia a requisição de busca | Serve os dados da conta |
| Ponto de falha comum | Cache desatualizado ou job travado no Sidekiq | Certificado SSL ou configuração DNS incorreta |
| Ferramenta do administrador | Painel de administração > Federação > Resolver | Administrador remoto deve corrigir a configuração do servidor |
| Tempo de recuperação | Segundos a minutos após a correção | Depende da resposta do administrador remoto |
Após concluir as etapas acima, você deve conseguir visualizar perfis remotos e interagir com usuários em outras instâncias. Se o erro foi causado por uma falha temporária de federação, a correção é imediata. Para problemas persistentes, verifique se as configurações de DNS e firewall do seu servidor estão corretas. Como dica avançada, você pode monitorar a saúde da federação ativando o registro de logs do Sidekiq em config/sidekiq.yml e revisando os logs com journalctl -u sidekiq -f.