Segurança e backups
Checklist
Seção intitulada “Checklist”- Token admin forte e fora do código. Defina
LITEZAP_ADMIN_TOKEN(ex.:openssl rand -hex 24) num arquivo de ambiente com permissão0600, ou deixe o LiteZap gerardata/admin_token(já criado com0600). Use o token admin só no backend; entregue a cada integração apenas o token da instância dela. - Rotacione tokens vazados.
POST /v1/instances/{id}/token/rotateinvalida o token antigo na hora. Para trocar o token admin, altere a variável e reinicie. - TLS sempre. Exponha a API só por um proxy reverso com HTTPS, com o LiteZap
escutando em
127.0.0.1. public_urlcorreto. Sem ele, URLs assinadas usariam o endereço interno; fora de loopback, o LiteZap recusa gerá-las (409 conflict).- Rotas de operação.
/healthze/readyzsão públicas só quando olisten_addré loopback; em qualquer outro endereço exigem o token admin. Atrás de proxy reverso, bloqueie-as no proxy. - SSRF. Mantenha
media_allow_private_urls: falseem servidores: assimmedia.urlnunca alcança a sua rede interna nem serviços de metadados da nuvem. - Firewall. Libere só 80/443 (proxy reverso) e SSH. A porta 8787 não precisa estar aberta.
- Usuário dedicado. Rode como usuário sem privilégios (a imagem Docker já usa
nonroot; veja a unit systemd). - Pasta de dados protegida.
data/contém as sessões do WhatsApp: quem tem esses arquivos controla os números. Permissão0700, disco criptografado quando possível.
O que o LiteZap já faz por você: guarda só o hash dos tokens de instância, compara tokens em tempo constante, nunca
coloca telefone nem token nas mensagens de erro, marca respostas com segredos como no-store e serve mídia recebida
com nosniff, CSP sandbox e download forçado para tipos que o navegador poderia executar.
Backups
Seção intitulada “Backups”Tudo está em data_dir. O banco e as sessões são SQLite em modo WAL, então copie com o serviço parado (ou a
partir de um snapshot do disco), para não pegar arquivos pela metade:
sudo systemctl stop litezapsudo tar czf /backup/litezap-data-$(date +%F).tgz -C /var/lib/litezap datasudo systemctl start litezap| Arquivo | Se perder |
|---|---|
instances/<id>/session.db |
O número precisa ser pareado de novo. |
litezap.db |
Perde instâncias, tokens, fila, chats e histórico. |
media_key |
URLs assinadas já emitidas param de funcionar (é recriado sozinho). |
admin_token |
Um novo é gerado; atualize suas integrações. |
media/ |
Mídia recebida é baixada de novo do WhatsApp enquanto ainda estiver disponível lá. |

