Os apps self-hosted que rodam no meu homelab

Vaultwarden, Technitium DNS, cloudflared, Pingularity e minhas próprias aplicações: o que roda no meu Proxmox, por que ficou e o que eu desinstalei.

Publicado
Leitura
5 min
Mini PC prateado com adesivo do Tux, usado como servidor doméstico, ao lado de um HD externo
Um mini PC como servidor em casa. Foto: PauleMiranda, CC BY-SA 4.0 (original).

Uma pergunta comum de quem está começando no self-hosting é: “o que vale a pena hospedar em casa?” A minha resposta mudou com o tempo. Já instalei muita coisa que parecia ótima e depois desinstalei porque, na prática, eu não usava. Hoje o critério é simples: fica o que eu uso de verdade.

Esta é a lista do que roda no meu Proxmox hoje, para que serve cada coisa e por que ficou.

Vaultwarden: o cofre de senhas da família #

O serviço mais importante do meu homelab é o Vaultwarden, onde a família guarda as senhas. Ele é um servidor compatível com o Bitwarden, escrito em Rust e bem mais leve que o servidor oficial, e funciona com os aplicativos do Bitwarden no celular e no navegador.

É também o serviço que mais exige responsabilidade. Se ele cair, ninguém em casa acessa nada, e se o backup falhar, perdemos as senhas. Se você for hospedar o seu, trate backup e atualização como parte do serviço, não como extra.

cloudflared: publicar sem abrir portas #

O cloudflared é o conector do Cloudflare Tunnel. Ele roda num container LXC e cria uma conexão de saída até a Cloudflare, por onde passam os serviços que eu publico na internet, inclusive este blog. Não preciso abrir nenhuma porta no roteador.

Foi ele também que resolveu o meu problema com bots no SSH, como contei no post sobre SSH sem porta 22 aberta.

Technitium DNS: o DNS interno #

Para o DNS interno da rede, uso o Technitium DNS Server. Ele é open source, tem uma interface web completa e funciona tanto como DNS recursivo quanto como servidor de zonas próprias. Um DNS interno é o que permite chamar os serviços do homelab por nome em vez de decorar IPs.

Painel do Technitium DNS Server com o total de consultas, respostas bloqueadas e um gráfico de consultas por minuto
Painel do Technitium DNS. Imagem: Technitium (divulgação).

O detalhe que muita gente esquece: se o DNS interno cai, a rede parece “sem internet” para todos os aparelhos que dependem dele. Por isso vale configurar um DNS secundário nos clientes ou no DHCP.

Pingularity: a internet está ruim ou é impressão? #

O Pingularity é um painel self-hosted de monitoria da conexão de casa. Pelo site do projeto, ele acompanha:

  • download, upload, ping, jitter e perda de pacotes;
  • latência para vários pontos da internet;
  • tempo de resolução de DNS;
  • histórico de quedas.

Com ele, quando a internet parece lenta, eu tenho dados em vez de impressão. E quando preciso reclamar com o provedor, tenho o histórico na mão.

Minhas próprias aplicações #

Uma parte grande do homelab é ocupada pelos SaaS e aplicações que eu desenvolvo. Elas rodam em containers LXC, com repositório no GitHub e deploy automático por runners do GitHub Actions que também rodam aqui. Este blog é uma delas.

Hospedar o que eu mesmo desenvolvo é, para mim, o melhor uso do homelab: ambiente de produção real, custo fixo baixo e controle total.

Firefox em container #

Tenho também um Firefox rodando num container, que uso para acesso externo. A ideia desse tipo de serviço é ter um navegador “dentro do homelab”, acessível de fora, para chegar a páginas da rede de casa sem publicar cada uma delas na internet.

Em teste: Hermes Agent #

O experimento do momento é o Hermes Agent, um agente de IA open source e self-hosted da Nous Research. Ele guarda memória entre sessões e pode ser acessado por apps de mensagem. Ainda estou testando, sem conclusão, então fica para um post futuro.

O que eu desinstalei #

Ao longo dos anos, instalei e removi vários serviços. Não lembro de todos, mas lembro do motivo, que foi sempre o mesmo: eu não via utilidade no dia a dia. Eram aplicações interessantes, bem feitas e populares nas listas de “melhores apps self-hosted”, que eu configurava, usava por uma semana e esquecia.

Cada serviço parado custa memória, atualização e atenção de segurança. Hoje, antes de instalar algo, eu me pergunto: que coisa eu faço hoje, fora do homelab, que esse serviço vai substituir? Se a resposta é “nenhuma”, não instalo.

O que está na fila: sair do Office 365 #

O próximo grande projeto é um Nextcloud para tirar arquivos e documentos da família do Office 365. Para isso, antes, quero um NAS para os backups e para o armazenamento, porque arquivos da família no mesmo disco do servidor é pedir para repetir um desastre que eu já vivi.

Resumindo #

Para quem está começando, uma ordem que faz sentido:

  1. Um conector de tunnel para publicar com segurança.
  2. DNS interno para dar nome às coisas.
  3. Cofre de senhas, só quando backup e atualização estiverem resolvidos.
  4. Monitoria da internet, para ter dados quando a conexão falhar.
  5. O resto, só se substituir algo que você já faz.

Homelab bom não é o que tem mais containers, é o que tem os containers que você usa.

Fontes e documentação