Fundação técnica
Tudo que precisa estar de pé antes de o produto começar a nascer: VPS, segurança, Docker, banco, skeleton, domínio e SSL.
- concluído0.1
Hardening da VPS
VPS Debian 12 com firewall (nftables policy drop), fail2ban, SSH chave-only, NTP loopback, sysctl hardening, AppArmor ativo, backups das configs originais.
- →Acesso SSH por chave (sem senha)
- →fail2ban + 1 IP já banido na primeira hora
- →Apenas TCP/22 + TCP/80 + TCP/443 públicos
- →74 pacotes oldstable atualizados + reboot
- →NTP escutando só em loopback
- concluído0.2
Documentação base + Agentes
PROJECT_CONTEXT, ARCHITECTURE, GAME_DESIGN_BIBLE, SECURITY_AND_ANTICHEAT, ROADMAP, ASSET_PIPELINE, INFRASTRUCTURE_AUDIT + 2 ADRs. 9 agentes especializados criados.
- →10 documentos cobrindo produto, arquitetura, segurança, design, infra
- →ADR-0001 (stack final) e ADR-0002 (isolamento total do Vistum)
- →9 agentes tower-* dedicados ao projeto
- concluído0.3
Docker + estrutura /opt/tower
Docker 29 + Compose. Redes Docker isoladas (tower-edge externa, tower-internal sem rota). Usuário tower (uid 2000) sem sudo.
- →Usuário tower com permissão Docker isolada
- →Estrutura /opt/tower/{compose,config,data,backups,logs}
- →Redes Docker: tower-edge e tower-internal
- concluído0.4
Postgres 16 + Redis 7
Containers isolados na rede interna. Sem portas públicas. Senhas fortes geradas. Comandos perigosos do Redis renomeados pra string vazia.
- →Postgres 16.13 healthy, db realm_defenders_tower
- →Redis 7 healthy, requirepass + FLUSH/CONFIG renomeados
- →JWT par RSA 2048 montado como volume read-only
- concluído0.5
Monorepo + skeleton funcional
apps/api (NestJS) + apps/web (Next 15) + apps/worker (BullMQ) + packages/{shared,game-rules,ui}. Builds Docker rodando com pnpm deploy.
- →API NestJS: /health e /health/deep retornando 200
- →Web Next.js 15 renderizando landing
- →Worker BullMQ com heartbeat queue
- →Prisma schema inicial com User + enums
- concluído0.6
Domínio + SSL + Nginx
realmdefendertower.site (Hostinger). DNS configurado: 16 registros (12 subdomínios + SPF + DMARC + CAA Let's Encrypt). Nginx host com vhost. Certbot emitiu cert pra apex + www + roadmap.
- →DNS resolvendo em segundos pela Cloudflare DNS
- →Cert válido até 2026-08-10 (renewal auto via timer systemd)
- →HTTP → HTTPS redirect; www → apex redirect
- →Headers de segurança: HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy
- →roadmap.realmdefendertower.site dedicado (esta página)