Segurança

↓ Baixar .md

Segurança

Como o PodCubo protege suas aplicações e dados.

Containers Rootless

O PodCubo usa Podman em modo rootless. Isso significa que:

  • Cada container roda sem acesso root ao sistema operacional
  • Mesmo que um atacante comprometa seu container, ele não tem acesso ao host
  • É mais seguro que Docker tradicional, que roda com privilégios de root

Isolamento de Stack

Cada stack é um pod isolado — todos os containers compartilham a mesma rede via localhost:

  • Apps e bancos dentro da mesma stack se comunicam via localhost em suas respectivas portas
  • Apps de stacks diferentes não se enxergam
  • Bancos de dados não são acessíveis pela internet — apenas pelos apps do mesmo pod

SSL/TLS Automático

Toda comunicação externa é criptografada:

  • Certificados Let's Encrypt gerenciados automaticamente
  • Renovação automática antes do vencimento
  • HTTPS em todos os domínios (automáticos e customizados)
  • Tráfego interno entre Cloudflare e o PodCubo também é criptografado

Proteção DDoS

Todo o tráfego passa pelo Cloudflare, que oferece:

  • Proteção DDoS automática
  • Rate limiting
  • Firewall de aplicação web (WAF)
  • Cache de conteúdo estático

systemd

O PodCubo usa Linux systemd pra gerenciar os containers:

  • Cada app é um serviço systemd isolado
  • Auto-restart em caso de falha
  • Logs integrados ao journald
  • Gerenciamento de ciclo de vida pelo sistema operacional

Boas Práticas

Variáveis de Ambiente

  • Nunca coloque secrets no código-fonte
  • Use variáveis de ambiente pra credenciais, API keys e tokens
  • As variáveis são injetadas no container em runtime, não ficam no build

Dockerfile

  • Use imagens oficiais e atualizadas
  • Minimize o número de camadas
  • Não copie arquivos desnecessários (use .dockerignore)
  • Rode sua aplicação como usuário não-root quando possível
# Exemplo: rodar como non-root
FROM node:20-alpine
RUN addgroup -S app && adduser -S app -G app
USER app
WORKDIR /app
COPY --chown=app:app . .
CMD ["node", "index.js"]

Bancos de Dados

  • Use senhas fortes (as credenciais geradas automaticamente já são)
  • Configure backups automáticos
  • Não exponha o banco diretamente na internet sem necessidade