O que me levou a operar um servidor doméstico
- Configuração inicial: no começo, comprei no Ali um mini PC com CPU Intel N100 e, usando um roteador ASUS, configurei encaminhamento de portas e DDNS para operar meu servidor doméstico.
- Problemas durante a operação: como às vezes ocorriam falhas de acesso por problemas inesperados, migrei o site TSBOARD para hospedagem web para garantir uma operação mais estável.
- Estado atual: o TSBOARD foi migrado para uma empresa de hospedagem, mas a comunidade de fotografia que eu administro ainda roda em um servidor doméstico feito com mini PC.
Por que escolhi um mini PC
- Desempenho e preço: mini PCs oferecem excelente custo-benefício graças ao CPU de baixo consumo e ao formato compacto. Eu usei um Beelink MINI S12 PRO e depois fiz upgrade para um modelo Genmachine baseado em RYZEN, mais potente.
- Adequado para uso como servidor doméstico: por ser pequeno e consumir pouca energia, é ideal para funcionar 24 horas por dia. Instalei o Ubuntu Server e tenho usado bem tanto para desenvolvimento quanto para operar serviços.
Como montar um servidor doméstico
- Comprar um domínio (em serviços como Namecheap) e conectar o domínio DDNS via CNAME.
- No roteador, usar encaminhamento de portas para direcionar as portas 80 e 443 ao mini PC.
- Recomendação de DDNS: usar o serviço de DDNS do fabricante do roteador é conveniente, mas podem ocorrer problemas de acesso. Eu uso um roteador ASUS e o ASUS DDNS, e às vezes acontecem falhas.
Dificuldades de operar um servidor doméstico
- Problemas de energia e hardware: quedas de energia ou falhas no roteador podem interromper o serviço, e há risco de corrupção de dados durante a recuperação. (Façam backup com frequência!)
- Troubleshooting: situações inesperadas para resolver falhas, como problemas de acesso ao DDNS ou de rede, acontecem com frequência.
Vantagens de operar um servidor doméstico
- Baixo custo: com um mini PC, é possível obter bom desempenho por um custo relativamente baixo. É especialmente vantajoso para usar armazenamento de grande capacidade.
- Configuração livre: o usuário pode escolher livremente a distribuição Linux ou as bibliotecas que quiser.
- Vários usos: ao instalar o code-server, é possível programar mesmo de fora de casa, além de usá-lo como servidor pessoal de desenvolvimento.
Recomendo tentar operar um servidor doméstico com mini PC
- No começo, um servidor doméstico pode parecer complexo, mas não é tão difícil começar, e o troubleshooting permite adquirir conhecimentos que podem ser úteis algum dia.
- É ideal para começar pequeno. Se questões como segurança começarem a preocupar e surgir a necessidade de reduzir com mais certeza problemas de acesso, ainda dá tempo de migrar depois para um ambiente mais estável.
- O caso compartilhado pelo K League Programmer no GeekNights me ajudou bastante. (https://pt.news.hada.io/topic?id=18274)
24 comentários
Eu queria um desempenho um pouco melhor,
então comprei um Mac mini M1 usado e estou usando como servidor doméstico,
e estou muito satisfeito.
Graças às experiências que vocês compartilharam aqui, também surgiram coisas que eu gostaria de experimentar. Obrigado.
Estou usando uma ferramenta e script de DDNS para atualizar o DNS pela API da Cloudflare quando uma mudança de IP é detectada, e isso também funciona muito bem. Como Ngrok e Cloudflare Tunnel passam por um servidor intermediário, ficam sujeitos a limitações de latência de resposta e largura de banda; já neste caso, como a estrutura não passa por um servidor intermediário, funciona bem. No entanto, há a desvantagem de que é preciso conectar na frente do roteador, em um switch, para receber um IP público.
Eu também tenho me interessado por home server recentemente, e acho que isso serviu bastante como referência. Obrigado.
Se por acaso não houve nenhuma falha por alguns meses e o servidor está rodando sem problemas, vocês fazem periodicamente algum procedimento como IPL (reinicialização do servidor)??
Imagino que também sejam necessárias tarefas como atualização do OS, então queria saber se vocês seguem algum ciclo separado para isso.
Na verdade, acho que seria só definir uma agenda e fazer mesmo haha
Olá! Na verdade, no meu caso o serviço não é tão conhecido nem gera muito tráfego, então acabo fazendo atualizações e reinicializações praticamente a qualquer momento (...), mas mesmo assim normalmente faço tarefas simples de atualização de madrugada.
Recentemente, quando fiz o upgrade do Ubuntu 22.04 para o 24.04, acho que trabalhei nisso ao longo do fim de semana...!
Como o serviço ainda tem pouca visibilidade e eu o uso principalmente para desenvolvimento, por enquanto isso funciona, mas se no futuro o número de usuários aumentar ou a operação 24h se tornar importante, acho que vai ser difícil continuar administrando tudo assim, e nessa hora provavelmente vou ter que deixar de usar um servidor doméstico... embora eu não saiba quando isso vai acontecer hahaha
Eu usava um Raspberry Pi em casa, mas agora já faz alguns anos que estou usando muito bem a VM ARM do free tier oferecida pela Oracle... Tomara que não acabem com ela....
Eu só ouvi dizer que a VM da Oracle tem um custo-benefício incrível, então fiquei curioso. Aproveitando, acho que eu também vou experimentar um pouco. haha
Estou usando o
coolifycom CI/CD integrado ao GitHub e self-hosting. Para DDNS, uso o container do Cloudflare; sempre que registro um novo domínio, adiciono manualmente e, depois de dar reload, ele entra também..Se ainda assim você não se sentir seguro, talvez valha considerar o
dnsever, oferecido por uma empresa coreana. Eu usei por mais de 10 anos e nunca tive problemas.Uau, vocês realmente estão usando de muitas formas diferentes!! Estou aprendendo bastante graças às informações que vocês compartilham nos comentários. Obrigado por avisarem!!
A questão da quantidade de IPs públicos sempre acaba sendo um problema, mas, assumindo que não seja para uso comercial,
Pela minha experiência, no caso da opção 1, há algumas partes que precisam ser configuradas na instância de computação em nuvem dependendo da aplicação ou da estrutura da infraestrutura, e também acaba tendo um pequeno custo.
Deixo uma referência sobre largura de banda. Pessoalmente, nos testes, consegui lidar sem problemas com algo em torno de 1 Gbps em carga total e, segundo o blog técnico deles, parece tranquilo ir até cerca de 5 Gbps. (https://tailscale.com/blog/more-throughput) Em uma rede gigabit doméstica comum, não há gargalo de largura de banda.
Eu também estou brincando com um mini PC n100, rodando várias coisas no Proxmox.
Prazer em conhecê-lo, haha. Eu também já saí do n100 para algo de especificações um pouco mais altas, mas ainda lembro bem do excelente custo-benefício e da eficiência energética do n100!!
Eu uso um Synology conectado a um UPS como servidor doméstico e tem funcionado muito bem~
Estou surpreso que você esteja usando com um UPS, hahaha. Assim, mesmo em caso de queda de energia, não vai ter problema, né!
Sem usar um DDNS separado, resolvi de forma eficiente com o Tailscale tanto os problemas de firewall quanto a construção de uma Mesh VPN e as questões de endpoint. Acesso de dentro e de fora do país, e já faz anos que não tenho problemas. Para desenvolvimento e uso pessoal, recomendo fortemente. Se você precisa fazer deploy público de serviços para um público indeterminado, vale considerar que há limitação de largura de banda.
Graças às recomendações de vocês, percebi que há muita coisa nova que preciso aprender! Obrigado por compartilharem os detalhes!
Usando o Route53 da AWS, é possível modificar registros DNS por script sem precisar de um serviço DDNS separado.
Usei o
ddns.pydo segundo link.https://7span.com/blog/dynamic-dns-with-aws-route-53?form=MG0AV3
https://github.com/nishant-p-7span/Dynamic-DNS/…--------------------------------
Eu também uso assim! Que legal :)
Nossa, que informação boa...! Obrigado!
Os roteadores da ASUS aparentemente têm problemas com DDNS. Eu usei um antes e, como o Wi‑Fi também era instável, acabei trocando.
É isso mesmo, eu não sabia muito bem do problema de DDNS, mas quando fui realmente rodar um home server vi que o problema era sério. Acho que vou aproveitar e mudar isso também.
Recentemente montei um home server com um notebook que não estava usando e usei o Cloudflare Tunnel em vez de DDNS. Ainda não consegui testar se ele aguenta tráfego suficiente, mas se você tiver interesse, recomendo experimentar :)
Eu já ficava estressado de vez em quando com o ASUS DDNS, então também vou tentar isso. Obrigado por avisar!!