📄 Documentação Técnica – Expondo o n8n Localmente com Cloudflare Zero Trust
🧭 Visão Geral
Este guia técnico ensina como executar o n8n localmente e torná-lo acessível na internet com segurança, utilizando Cloudflare Tunnel (Cloudflared) e Cloudflare Zero Trust.
Esse processo é ideal para ambientes de desenvolvimento, testes de automações e integrações com serviços externos que exigem URLs públicas (como webhooks, APIs etc.).
✅ Pré-requisitos
Antes de iniciar, você deve ter:
- Conta ativa na Cloudflare
- Domínio configurado na Cloudflare (ex:
meuprojeto.xyz
) - Node.js e npm instalados
- n8n instalado localmente (
npx n8n
ou instalação global) - Acesso à linha de comando (Windows CMD, PowerShell, Terminal Linux/macOS)
💡 Dica: Domínios
.xyz
são baratos (~R$5) e funcionam bem para projetos pessoais.
⚙️ Etapas do Processo
1. Criar Conta no Cloudflare Zero Trust
- Acesse dash.cloudflare.com
- Vá até o menu lateral e clique em Zero Trust.
- Complete as informações da organização.
- A conta Zero Trust será ativada automaticamente.
2. Criar o Tunnel no Cloudflare
- Vá até o painel Zero Trust > Access > Tunnels
- Clique em Create a Tunnel
- Dê um nome para o túnel (ex:
n8n-local
) - Siga as instruções para instalar o Cloudflared (client CLI)
3. Executar o Tunnel
- Autentique-se com a Cloudflare:
- Crie e configure o túnel (seguindo os passos no painel)
- Execute o tunnel:
Isso criará um túnel entre sua máquina local e o domínio configurado no painel da Cloudflare.
4. Configurar e Executar o n8n com HTTPS
Execute o n8n com as variáveis de ambiente corretas para funcionar via HTTPS (necessário para webhooks e autenticação):
Comando (Windows CMD):
set "N8N_PROTOCOL=https" & set "N8N_HOST=n8n.seudominio.xyz" & set "WEBHOOK_URL=https://n8n.seudominio.xyz/" & npx n8n
Substitua
n8n.seudominio.xyz
pelo subdomínio que você configurou na interface da Cloudflare.
🌐 Acessando o n8n
Acesse via navegador:
https://n8n.seudominio.xyz
A interface do n8n estará disponível externamente, segura e funcional.
⚠️ Notas de Produção
- Essa abordagem não é recomendada para produção final.
- O túnel depende do Cloudflared estar ativo e do host local estar online.
- Para ambientes de produção, considere hospedar o n8n em VPS/Docker e configurar domínios com SSL/TLS via reverse proxy (ex: Nginx).
🛠 Troubleshooting
Problema | Solução |
---|---|
ERR_TUNNEL_CONNECTION_FAILED | Verifique se o Cloudflared está rodando e autenticado corretamente |
Webhooks não funcionam | Confirme as variáveis WEBHOOK_URL e N8N_HOST |
“Command not found: cloudflared” | Certifique-se de que o cloudflared está no PATH do sistema |
Porta 5678 já em uso | Altere com a variável --port no comando n8n |
📂 Estrutura Recomendada
Para manter tudo organizado, considere usar uma estrutura como:
/meuprojeto-n8n
│
├── .env (opcional)
├── start-tunnel.sh / start-tunnel.bat
├── start-n8n.sh / start-n8n.bat
└── README.md