Pular para o conteúdo
silvabw
← Soluções

Infraestrutura self-hosted

Cluster Docker Swarm, VPN, firewall com failover, monitoramento e e-mail marketing próprio, para rodar os serviços da operação em um ambiente sob controle da empresa.

Problema que resolve

  • Dependência de um único link de internet. Uma queda na conexão do escritório para o que depende dela.
  • Serviços sem padrão de implantação. Instalar e atualizar serviços em servidores avulsos é um trabalho manual e difícil de repetir.
  • Acesso seguro a sistemas internos. Automações na nuvem precisam falar com sistemas da rede interna, sem expor esses sistemas à internet.
  • Custo e controle de dados. Assinaturas por contato ou por usuário crescem junto com a operação, e os dados ficam em ambientes de terceiros, como no caso do e-mail marketing.

Como funciona

Uma infraestrutura própria em camadas, da borda do escritório até os serviços.

Escritório: firewall de borda com failover

Um firewall OPNsense na borda do escritório administra os níveis de conexão: link dedicado, link de backup e 4G como plano C. Ele também filtra DNS para bloquear domínios maliciosos.

Acesso: VPN

Uma VPN liga o escritório aos servidores na nuvem, e as automações alcançam os sistemas internos por esse túnel privado. Os painéis administrativos só podem ser acessados pela VPN.

Nuvem: exposição mínima

Na borda da nuvem, ficam abertas só as portas web e a da VPN. Os serviços públicos ficam atrás de túnel/CDN.

Aplicações: cluster Docker Swarm

Servidores Debian na Hetzner formam um cluster Docker Swarm, e os nós se comunicam pela rede privada do provedor. Cada serviço é descrito em um arquivo de configuração, o que torna implantações e atualizações repetíveis, e permite redistribuir serviços entre os servidores do cluster.

Arquivos: bucket privado

Os arquivos ficam em um bucket privado, com criptografia.

Monitoramento: alertas no WhatsApp

Os nós do cluster são monitorados, com alertas automáticos no WhatsApp. Além disso, cada servidor envia um heartbeat para um serviço externo.

Serviços: n8n, Chatwoot e Mautic

O cluster roda os serviços da operação comercial, como o n8n e o Chatwoot. O Mautic atende o e-mail marketing, com contatos e campanhas no ambiente da própria empresa.

Decisões de projeto

  • Rede privada por padrão. Só fica exposto o que realmente precisa ser público.
  • Hardening por script idempotente. O mesmo script prepara todos os servidores Debian e pode rodar de novo sem efeitos indesejados.
  • Configuração descrita em arquivos. Saber como cada serviço está configurado não depende da memória de uma pessoa, e reconstruir o ambiente fica mais simples.
  • Self-hosted onde compensa. Serviços ficam em casa quando o controle dos dados ou o custo justificam, sem a meta de hospedar tudo.
Link dedicadoLink de backup4GFirewall OPNsenseVPNCluster Docker Swarmn8nChatwootMautic

O que entrega

  • Internet do escritório protegida contra a queda de um link
  • Painéis administrativos fora da internet pública
  • Implantações e atualizações repetíveis
  • Avisos automáticos no WhatsApp quando um servidor precisa de atenção
  • Dados e serviços em um ambiente sob controle da empresa

Stack

  • Docker Swarm
  • Hetzner
  • Debian
  • OPNsense
  • VPN
  • Mautic
  • n8n
  • Chatwoot