La mayoría de las configuraciones de n8n autoalojadas no fallan por la herramienta en sí, sino por la configuración del VPS que la rodea.
En una encuesta realizada a más de 400 usuarios de n8n que utilizan servidores propios , más del 60 % reportaron haber experimentado fallos en el flujo de trabajo, tiempos de inactividad inesperados o incidentes de seguridad durante los primeros 30 días de implementación. En casi todos los casos, la causa principal era evitable. Servidores con poca potencia, configuraciones de seguridad omitidas, variables de entorno mal configuradas y la ausencia total de sistemas de respaldo fueron las causas de la mayoría de los fallos.
n8n es una potente plataforma de automatización de flujos de trabajo de código abierto. Cuando se aloja correctamente en un VPS, le brinda propiedad total de los datos y ahorros de costos significativos sobre manageLas herramientas SaaS ofrecen la flexibilidad de ejecutar miles de automatizaciones a gran escala. Sin embargo, este poder conlleva una responsabilidad de configuración que suele sorprender a muchos usuarios.
Esta guía abarca los 10 errores más críticos que cometen los desarrolladores y los equipos al alojar n8n en un VPS, junto con los pasos exactos para solucionarlos. Tanto si configuras n8n por primera vez como si solucionas problemas en una instancia de producción inestable, esta guía te ofrece una referencia fiable y respaldada por expertos para que todo funcione correctamente desde el primer día.
Esto es exactamente lo que aprenderás:
- Las especificaciones correctas de VPS que n8n necesita según los diferentes volúmenes de trabajo.
- Cómo instalar n8n correctamente usando Docker para lograr estabilidad en producción.
- Pasos de refuerzo de seguridad que la mayoría de las guías de configuración omiten por completo.
- Configuración de copia de seguridad, monitorización y modo de cola para cargas de trabajo de automatización exigentes.
- Lista de verificación para la configuración completa, desde cero hasta la producción.
¿Qué es n8n y por qué es importante el alojamiento VPS?
n8n (que se pronuncia “n-ocho-n”) es una herramienta de automatización de flujos de trabajo de código abierto basada en Node.js. Se ejecuta bajo una licencia de código libre, lo que significa que es gratuita para el autoalojamiento, pero requiere una licencia comercial para su uso en productos SaaS.

Fundada en 2019 por Jan Oberhauser, se ha convertido en una de las alternativas autoalojadas más utilizadas frente a Zapier y Make (anteriormente Integromat).
A diferencia de las herramientas de automatización basadas en la nube, n8n te brinda control total sobre los datos de tu flujo de trabajo, las credenciales de la API y el historial de ejecución. Ningún tercero almacena tus claves ni la lógica empresarial confidencial.
Por qué la configuración del VPS es tan importante
n8n es una aplicación Node.js que simultáneamente manageEl proceso persistente SA gestiona una cola de trabajos, escucha los webhooks entrantes y escribe continuamente datos de ejecución en una base de datos. Esto lo hace sensible a varias variables de infraestructura.
RAM La disponibilidad afecta directamente a la estabilidad. Insuficiente RAM provoca que el proceso Node.js falle durante el pico de ejecución. CPU La velocidad determina el rendimiento. Lento CPULos problemas generan retrasos en la ejecución de flujos de trabajo, especialmente cuando estos se ejecutan en paralelo. La E/S de disco afecta a cada operación de escritura que realiza n8n. El almacenamiento en disco duro crea cuellos de botella medibles, ya que n8n escribe registros de ejecución constantemente. La fiabilidad de la red es fundamental para los flujos de trabajo activados por webhook, que fallan silenciosamente cuando el servidor tarda en responder.
Un VPS mal configurado no solo causa inconvenientes. Puede interrumpir silenciosamente la ejecución de flujos de trabajo, corromper datos de automatización y exponer tus credenciales a internet. Configurar correctamente la infraestructura desde el principio es fundamental para las implementaciones en producción.
10 errores críticos al usar un VPS n8n y sus soluciones exactas
Error 1: Elegir un VPS con poca potencia.
Por que sucede
La mayoría de los principiantes buscan el VPS más barato disponible y asumen que n8n funcionará con los recursos que se le proporcionen. Un VPS de 1 GB RAM, 1 vCPU El servidor parece funcionar correctamente hasta que se ejecuta el primer flujo de trabajo complejo.
Impacto en el mundo real
En pruebas realizadas en una memoria de 1 GB RAM En un servidor con Ubuntu 22.04, un flujo de trabajo con 8 nodos y dos pasos de solicitud HTTP elevó el uso de memoria de n8n al 94%. Al añadir un segundo flujo de trabajo concurrente, se produjo un fallo por falta de memoria en 4 minutos. Fue necesario reiniciar el servidor manualmente.
La solución: elige el nivel de especificación adecuado para tu carga de trabajo.
| Caso de uso | RAM | CPU | Almacenaje | Procesos |
| Personal o de prueba | 2 GB | 1 vCPU | SSD | 1 a 10 sencillos |
| Pequeño equipo | 4 GB | 2 vCPU | NVMe | 10 a 30 |
| Equipo en crecimiento | 8 GB | 4 vCPU | NVMe | 30 a 100 |
| Producción de alto volumen | 16 GB + | 6 a 8 vCPU | NVMe | 100+ |
El almacenamiento SSD NVMe es indispensable para entornos de producción. La base de datos SQLite predeterminada de n8n ofrece un rendimiento entre 3 y 5 veces superior en NVMe en comparación con un disco duro estándar. Al cambiar a PostgreSQL (recomendado para uso en equipo), la diferencia con NVMe es aún más significativa en cargas de trabajo con alta actividad de escritura.
Para los equipos que necesitan un proveedor que ya cumpla con estas especificaciones de forma inmediata, YouStableAlojamiento VPS n8n de 's Ofrece planes desde 4 GB RAM con almacenamiento SSD NVMe en todos los niveles. vStart Plan de 4 GB RAM y la unidad SSD NVMe de 50 GB cubre la mayoría de las necesidades de los equipos pequeños, mientras que la vProfessional Plan de 8 GB RAM y los 100 GB de NVMe gestionan cargas de trabajo de automatización cada vez mayores sin cuellos de botella en el rendimiento.
Consejo profesional: Siempre elige un VPS con dedicado CPU núcleos, no compartidos ni de ráfaga. Compartidos CPU Los planes limitan el rendimiento durante los períodos de alto uso, que es precisamente cuando sus flujos de trabajo necesitan más recursos.
Error 2: Instalar n8n sin Docker
Por que sucede
La documentación de inicio rápido de n8n muestra una instalación global de npm en una sola línea: npm install n8n -g. Esto funciona para pruebas locales, pero crea serios problemas en servidores de producción.
Impacto en el mundo real
Una instalación global de npm vincula n8n directamente a la versión de Node.js del sistema. Cualquier actualización del sistema que modifique Node.js puede romper n8n sin previo aviso. Ejecutar n8n como unmanageEl proceso global también significa que los reinicios del servidor detienen silenciosamente su automatización sin reinicio automático.
La solución: utilice Docker Compose para producción. Cree el archivo /opt/n8n/docker-compose.yml con la siguiente configuración:
version: "3.8"
services:
n8n:
image: n8nio/n8n:latest
restart: always
ports:
- "127.0.0.1:5678:5678"
environment:
- N8N_HOST=${N8N_HOST}
- N8N_PORT=5678
- N8N_PROTOCOL=https
- NODE_ENV=production
- WEBHOOK_URL=https://${N8N_HOST}/
- GENERIC_TIMEZONE=Asia/Kolkata
- N8N_BASIC_AUTH_ACTIVE=true
- N8N_BASIC_AUTH_USER=${N8N_USER}
- N8N_BASIC_AUTH_PASSWORD=${N8N_PASSWORD}
- DB_TYPE=postgresdb
- DB_POSTGRESDB_HOST=postgres
- DB_POSTGRESDB_PORT=5432
- DB_POSTGRESDB_DATABASE=n8n
- DB_POSTGRESDB_USER=${POSTGRES_USER}
- DB_POSTGRESDB_PASSWORD=${POSTGRES_PASSWORD}
volumes:
- n8n_data:/home/node/.n8n
depends_on:
- postgres
postgres:
image: postgres:15-alpine
restart: always
environment:
- POSTGRES_DB=n8n
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
n8n_data:
postgres_data:Comience con: docker compose up -d
Esta configuración es mejor por varias razones. La directiva `restart: always` garantiza que n8n sobreviva automáticamente a los reinicios del servidor. Al vincular el puerto a 127.0.0.1, n8n nunca queda expuesto directamente a internet. PostgreSQL reemplaza a SQLite, lo cual es fundamental para el uso multiusuario o de alto volumen. Los volúmenes de Docker conservan los datos incluso si se recrean los contenedores.
Consejo práctico: Fije la imagen Docker de n8n a una etiqueta de versión específica, como n8nio/n8n:1.42.1, en lugar de usar la última versión en producción. Esto evita cambios inesperados que puedan causar problemas durante las implementaciones automáticas.
Error 3: Omitir HTTPS y SSL Configuration
Por que sucede
Los usuarios obtienen n8n ejecutándose en http://server-ip:5678 y lo consideran aceptable porque son los únicos usuarios. Esto no es aceptable para ninguna instancia con acceso a internet.
Impacto en el mundo real
Sin HTTPS, todas las credenciales de API que ingrese en n8n (tokens OAuth, contraseñas de bases de datos, claves de API) se transmiten en texto plano. Los atacantes a nivel de red que sigan la misma ruta pueden capturarlas todas. Además, las principales fuentes de webhook, como Stripe, GitHub y Shopify, ahora requieren puntos finales HTTPS. SSLEsos webhooks simplemente no se activarán.
La solución: Nginx Proxy inverso con Let's Encrypt SSL
Paso 1: Instalar Nginx y Certbot.
sudo apt update
sudo apt install nginx certbot python3-certbot-nginx -yPaso 2: crea tu Nginx configuración en /etc/nginx/sites-available/n8n.
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://127.0.0.1:5678;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 300s;
proxy_send_timeout 300s;
}
}Paso 3: Habilita el sitio y obtén tu certificado.
sudo ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
sudo certbot --nginx -d your-domain.comCertbot configura automáticamente HTTPS y crea una tarea programada (cron job) para la renovación automática. Su certificado se renueva cada 90 días sin necesidad de intervención manual.
Una nota importante: si está utilizando YouStable para tu VPS n8n, SSL Está incluido sin costo adicional en todos los planes. Gratis. SSL Los certificados vienen preconfigurados, lo que significa que puede omitir por completo la configuración de Certbot e ir directamente a la Nginx configuración de proxy.
Consejo profesional: Después SSL está activo, agregue estos encabezados de seguridad a su Nginx config.
add_header Strict-Transport-Security "max-age=31536000" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;Error 4: Autenticación débil o inexistente
Por que sucede
La autenticación básica resulta obsoleta para los desarrolladores acostumbrados a los flujos de OAuth. Muchos usuarios la desactivan con la intención de añadir la autenticación adecuada más adelante. Sin embargo, ese "más adelante" rara vez llega.
Impacto en el mundo real
En 2023, investigadores de seguridad descubrieron cientos de instancias n8n accesibles públicamente sin ningún tipo de autenticación. Dichas instancias contenían credenciales de API activas para AWS, Stripe y Twilio que eran inmediatamente vulnerables.
La solución: implementar la autenticación por capas.
La capa 1 es la autenticación básica, que es el mínimo para cualquier instancia con acceso a internet. Agregue lo siguiente a su archivo .env:
N8N_BASIC_AUTH_ACTIVE=true
N8N_BASIC_AUTH_USER=your_admin_username
N8N_BASIC_AUTH_PASSWORD=use_a_long_random_password_hereLa capa 2 es el usuario integrado de n8n management, disponible a partir de n8n v0.194. Agregue estas variables de entorno para habilitar cuentas de equipo adecuadas con acceso basado en roles:
N8N_USER_MANAGEMENT_DISABLED=false
N8N_EMAIL_MODE=smtp
N8N_SMTP_HOST=smtp.yourdomain.com
N8N_SMTP_PORT=587
[email protected]
N8N_SMTP_PASS=your_smtp_password
[email protected]La capa 3 es la configuración del firewall a nivel del sistema operativo:
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw deny 5678/tcp
sudo ufw enableConsejo profesional: Nunca exponga el puerto 5678 directamente. Todo el tráfico debe fluir a través de su Nginx proxy inverso en el puerto 443. La regla ufw deny 5678 aplica esto a nivel de firewall incluso si su Nginx La configuración es incorrecta.
Error 5: Utilizar proveedores de VPS de baja calidad o poco fiables.
Por que sucede
La comparación de precios es fundamental en las decisiones de compra. Un VPS de 3 dólares al mes parece idéntico a uno de 12 dólares al mes en sus especificaciones técnicas. Las diferencias solo se hacen evidentes cuando los flujos de trabajo de producción empiezan a fallar a las 2 de la madrugada.
Impacto en el mundo real
Los proveedores de VPS económicos a menudo sobrevenden hardware compartido, utilizan almacenamiento HDD lento o SSD de gama baja y no ofrecen ningún SLA de tiempo de actividad. Para cargas de trabajo de automatización donde un webhook debe responder en 3 segundos, la inconsistencia CPU El rendimiento provoca fallos aleatorios en el flujo de trabajo que son prácticamente imposibles de depurar porque el problema reside en la infraestructura, no en el código.
Lista de verificación para la evaluación del proveedor
| Criterios | Qué buscar | Banderas rojas |
| Tiempo de actividad SLA | 99.9% o superior, por escrito | No se menciona ningún SLA |
| Tipo de almacenamiento | Se indicó explícitamente que la unidad SSD NVMe | “SSD” sin especificación NVMe |
| Network | Ancho de banda dedicado de 1 Gbps | Ancho de banda compartido o no especificado |
| Soporte | 24/7 con agentes humanos | Soporte solo para bots o para foros. |
| Información | Copias de seguridad automatizadas incluidas | Las copias de seguridad tienen un coste adicional. |
| Política de Devoliciones | GARANTÍA DE 30 DÍAS PARA DEVOLUCIONES | No se especifica ninguna política de reembolso. |
YouStable Vale la pena mencionarlo directamente aquí porque aborda cada uno de estos criterios específicamente para cargas de trabajo n8n. La plataforma ofrece una 99.99Garantía de tiempo de actividad del % respaldada por una política de crédito de servicio, almacenamiento SSD NVMe en todos los niveles de VPS, soporte humano 24/7 (no bots) a través de chat en vivo y sistema de tickets, copias de seguridad automatizadas semanales con restauración con un solo clic y una garantía de devolución de dinero de 30 días.
Los planes VPS de n8n también vienen preconfigurados con soporte para Node.js, PM2 y Docker, lo que elimina los conflictos de dependencias que causan la mayoría de los fallos en las instalaciones nuevas de los proveedores VPS genéricos.
Para los equipos que desean una opción verificada sin pasar horas comparando proveedores, YouStableAlojamiento VPS n8n de 's es un punto de partida sencillo.
Error 6: No contar con un plan de respaldo y recuperación ante desastres.
Por que sucede
Las copias de seguridad parecen innecesarias hasta que se produce el primer fallo grave. Para entonces, meses de desarrollo del flujo de trabajo pueden haberse perdido para siempre.
Impacto en el mundo real
n8n almacena flujos de trabajo, credenciales, historial de ejecución y configuraciones en su base de datos. Un fallo en un volumen de Docker, un comando docker compose down -v accidental o un fallo en el almacenamiento del VPS sin copia de seguridad implican una reconstrucción completa desde cero. No existe ninguna opción de recuperación sin una copia de seguridad.
La solución: implementar la regla de respaldo 3-2-1
La regla 3-2-1 significa 3 copias de datos, almacenadas en 2 tipos diferentes de soportes, con 1 copia fuera del sitio. Aplicado a n8n:
El método de copia de seguridad 1 consiste en una copia de seguridad automatizada de la base de datos PostgreSQL.
Crear /opt/n8n/backup.sh:
#!/bin/bash
BACKUP_DIR="/opt/n8n/backups"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR
docker exec n8n_postgres_1 pg_dump -U n8n n8n > "$BACKUP_DIR/n8n_db_$DATE.sql"
gzip "$BACKUP_DIR/n8n_db_$DATE.sql"
find $BACKUP_DIR -name "*.sql.gz" -mtime +30 -delete
echo "Backup completed: n8n_db_$DATE.sql.gz"Agregar a crontab con crontab -e:
0 2 * * * /opt/n8n/backup.sh >> /var/log/n8n-backup.log 2>&1El método de copia de seguridad 2 es la exportación del flujo de trabajo de la CLI de n8n:
docker exec -it n8n_n8n_1 n8n export:workflow --all --output=/home/node/.n8n/workflows-export.json
docker exec -it n8n_n8n_1 n8n export:credentials --all --output=/home/node/.n8n/credentials-export.jsonEl método de copia de seguridad 3 son las instantáneas del proveedor de VPS. Si está en YouStableTodos los planes VPS de n8n incluyen copias de seguridad automáticas semanales. La restauración con un solo clic está disponible directamente desde el panel de control, sin necesidad de usar la línea de comandos.
Consejo práctico: Pruebe sus copias de seguridad al menos una vez al trimestre restaurándolas en un servidor de prueba. Una copia de seguridad que nunca ha probado no es fiable.
Error 7: Flujos de trabajo no optimizados que consumen recursos excesivos
Por que sucede
El editor visual de n8n facilita la adición de nodos. Un flujo de trabajo que funciona correctamente en las pruebas puede consumir silenciosamente 10 veces más recursos de los necesarios en producción porque nadie lo analizó antes de su implementación.
Impacto en el mundo real
Al analizar 50 flujos de trabajo n8n compartidos por la comunidad, los patrones más comunes de desperdicio de recursos fueron el sondeo innecesario (consultar una API cada minuto cuando un webhook podría realizar la misma tarea), la falta de nodos de manejo de errores que provocaban reintentos silenciosos y el uso del nodo Código para lógica que los nodos integrados podrían manejar de forma nativa.
La solución: lista de verificación para la optimización del flujo de trabajo
Utilice webhooks en lugar de activadores de sondeo siempre que el servicio los admita. Un activador de sondeo que comprueba cada minuto genera 1,440 llamadas a la API al día por flujo de trabajo. Un activador de webhook genera una llamada por evento real. Stripe, GitHub, Typeform y Shopify admiten webhooks.
Agregue el manejo de errores a cada flujo de trabajo de producción:
[Trigger] -> [Your Nodes] -> [Success Path]
|
[Error Trigger] -> [Notify via Slack or Email] -> [Stop and Error]Sin un manejo de errores, un flujo de trabajo fallido puede reintentarse silenciosamente o dejar datos parciales en los sistemas conectados.
Habilite la eliminación de datos de ejecución en sus variables de entorno:
EXECUTIONS_DATA_PRUNE=true
EXECUTIONS_DATA_MAX_AGE=168
EXECUTIONS_DATA_PRUNE_MAX_COUNT=10000Sin podar, su base de datos PostgreSQL crece indefinidamente y la interfaz n8n se vuelve progresivamente más lenta con el paso de los meses de uso.
Habilite el modo "Ejecutar una vez" en la configuración del nodo cuando su flujo de trabajo deba procesar todos los elementos en una sola pasada, en lugar de hacerlo uno por uno. Esto reduce significativamente la sobrecarga de creación de subprocesos.
Consejo práctico: ordena tu lista de flujos de trabajo por tiempo de ejecución. Cualquier flujo de trabajo que tarde más de 30 segundos merece una auditoría de rendimiento antes de que cause problemas de recursos a gran escala.
Error 8: No hay configuración de registro ni de monitorización.
Por que sucede
La monitorización se percibe como una complejidad de infraestructura que se añade una vez que el proyecto está maduro. Cuando algo falla sin monitorización, te encuentras depurando un sistema sin datos históricos.
Impacto en el mundo real
Un patrón de fallo común: un flujo de trabajo activado por webhook deja de recibir solicitudes tras reiniciar el servidor. Sin monitorización, esto pasa desapercibido durante días. Las automatizaciones críticas para los ingresos (procesamiento de pedidos, generación de facturas, incorporación de clientes) fallan silenciosamente durante todo este tiempo.
La solución: configurar la monitorización por capas.
El nivel 1 consiste en la monitorización del tiempo de actividad y su configuración lleva unos 5 minutos. Registre su dominio n8n en UptimeRobot (plan gratuito). Configure comprobaciones HTTP cada 5 minutos con alertas por correo electrónico y SMS en caso de inactividad. Esto es lo mínimo indispensable para cualquier instancia de producción.
El nivel 2 es el registro de ejecución de n8n. Agregue estas variables de entorno:
N8N_LOG_LEVEL=info
N8N_LOG_OUTPUT=console,file
N8N_LOG_FILE_LOCATION=/home/node/.n8n/logs/n8n.log
N8N_LOG_FILE_SIZE_MAX=16
N8N_LOG_FILE_COUNT_MAX=100El nivel 3 consiste en la monitorización de los recursos del servidor mediante Grafana y Prometheus para equipos que gestionan cargas de trabajo de automatización importantes.
Supervise estas métricas como mínimo:
| Métrico | Umbral de advertencia | Umbral crítico |
| CPU personal | Más del 70% sostenido | Más del 90% sostenido |
| RAM personal | Durante 75% | Durante 90% |
| Uso del disco | Durante 70% | Durante 85% |
| Ejecuciones fallidas | Más del 5% del total | Más del 15% del total |
Si estás en YouStableLa plataforma incluye un sistema de monitorización del rendimiento integrado que realiza un seguimiento del uso de recursos y las métricas de disponibilidad en tiempo real desde su panel de control. Esto cubre las necesidades de nivel 1 y nivel 2 sin necesidad de instalar herramientas adicionales.
Consejo práctico: Crea un flujo de trabajo sencillo en n8n que se comunique a sí mismo mediante un webhook cada 15 minutos y registre el tiempo de respuesta. Si el flujo de trabajo deja de funcionar, lo sabrás en 15 minutos, lo cual es más rápido que la mayoría de los monitores externos que detectan fallos a nivel de aplicación.
Error 9: Variables de entorno mal configuradas o incompletas
Por que sucede
n8n admite cientos de variables de entorno. La mayoría de los tutoriales solo muestran 5 o 6 de ellas. Los usuarios copian una configuración parcial y descubren las partes que faltan solo cuando falla la autenticación, no se envían los correos electrónicos o los flujos de trabajo se comportan de forma inconsistente bajo carga.
La solución: referencia completa de .env para producción
Cree el archivo /opt/n8n/.env con todas las variables críticas configuradas correctamente:
# Core Configuration
N8N_HOST=your-domain.com
N8N_PORT=5678
N8N_PROTOCOL=https
WEBHOOK_URL=https://your-domain.com/
N8N_EDITOR_BASE_URL=https://your-domain.com/
# Authentication
N8N_BASIC_AUTH_ACTIVE=true
N8N_BASIC_AUTH_USER=admin
N8N_BASIC_AUTH_PASSWORD=strong_random_password_here
# Database
DB_TYPE=postgresdb
DB_POSTGRESDB_HOST=postgres
DB_POSTGRESDB_PORT=5432
DB_POSTGRESDB_DATABASE=n8n
DB_POSTGRESDB_USER=n8n_user
DB_POSTGRESDB_PASSWORD=strong_db_password_here
# Encryption Key (generate with: openssl rand -hex 24)
N8N_ENCRYPTION_KEY=your_32_char_random_encryption_key
# Execution and Performance
EXECUTIONS_DATA_PRUNE=true
EXECUTIONS_DATA_MAX_AGE=168
EXECUTIONS_DATA_PRUNE_MAX_COUNT=10000
N8N_DEFAULT_BINARY_DATA_MODE=filesystem
# Timezone
GENERIC_TIMEZONE=Asia/Kolkata
TZ=Asia/Kolkata
# Email and SMTP
N8N_EMAIL_MODE=smtp
N8N_SMTP_HOST=smtp.yourdomain.com
N8N_SMTP_PORT=587
[email protected]
N8N_SMTP_PASS=smtp_password_here
[email protected]
# Logging
N8N_LOG_LEVEL=info
N8N_LOG_OUTPUT=console,file
# Security
N8N_BLOCK_ENV_ACCESS_IN_NODE=true
N8N_RESTRICT_FILE_ACCESS_TO=./Nota crítica sobre N8N_ENCRYPTION_KEY: Esta clave cifra todas las credenciales almacenadas en su base de datos. Si pierde esta clave, todas las credenciales almacenadas se volverán ilegibles de forma permanente. Realice una copia de seguridad por separado de la copia de seguridad de su base de datos, idealmente en una contraseña dedicada. manager. Esta es la causa más común de pérdida permanente de datos después de una migración de servidor.
Consejo profesional: Nunca incluyas tu archivo .env en el control de versiones. Agrégalo a .gitignore inmediatamente. Para entornos de equipo donde varias personas necesitan acceso a la configuración, usa un secrets. manager como Doppler o HashiCorp Vault.
Error 10: No habilitar el modo de cola para flujos de trabajo concurrentes.
Por que sucede
El modo de cola requiere agregar Redis a la pila, lo que muchos usuarios perciben como una complejidad innecesaria. Lo omiten hasta que notan que los flujos de trabajo se acumulan y se ejecutan lentamente bajo carga.
Impacto en el mundo real
Sin el modo de cola, n8n procesa todas las ejecuciones de flujo de trabajo dentro del proceso principal de la aplicación. Con 5 o más ejecuciones de flujo de trabajo simultáneas, el proceso principal se convierte en un cuello de botella. Las respuestas de los webhooks se ralentizan notablemente. Los disparadores programados empiezan a perder sus ventanas de ejecución. Todo el sistema se degrada progresivamente bajo carga.
La solución: habilitar el modo cola con Redis.
Agrega Redis a tu archivo docker-compose.yml:
redis:
image: redis:7-alpine
restart: always
command: redis-server --maxmemory 256mb --maxmemory-policy allkeys-lru
volumes:
- redis_data:/data
volumes:
redis_data:
Add these variables to your .env:
EXECUTIONS_MODE=queue
QUEUE_BULL_REDIS_HOST=redis
QUEUE_BULL_REDIS_PORT=6379
QUEUE_BULL_REDIS_DB=0
N8N_CONCURRENCY_PRODUCTION_LIMIT=10Cómo cambia la arquitectura de ejecución el modo de cola:
Sin el modo de cola, todos los flujos de trabajo comparten un proceso principal y se ejecutan secuencialmente cuando hay mucha carga. Con el modo de cola, el proceso principal solo gestiona la recepción de webhooks y la interfaz de usuario.
Cada ejecución de flujo de trabajo se envía a una cola de Redis y es procesada por un proceso de trabajo disponible. Esto significa que se pueden ejecutar 10 flujos de trabajo simultáneamente sin que ninguno bloquee a los demás.
Consejo profesional: Comience con N8N_CONCURRENCY_PRODUCTION_LIMIT=5 y aumente gradualmente mientras observa RAM consumo. Cada proceso de trabajador utiliza aproximadamente de 150 a 200 MB de RAMEn un VPS de 4 GB, un límite de entre 8 y 10 trabajadores simultáneos es un tope sostenible.
Referencia de configuración recomendada para VPS n8n (2026)
Utilice estas tablas como referencia rápida al aprovisionar o auditar la configuración de su VPS n8n.
Especificaciones de VPS según el caso de uso
| Nivel | Usuarios | Flujos de trabajo activos | RAM | CPU | Almacenaje | Database |
| Personal | 1 | 1 a 10 | 2 GB | 1 vCPU | 20 GB SSD | SQLite |
| Pequeño equipo | 2 a 5 | 10 a 30 | 4 GB | 2 vCPU | 40 GB NVMe | PostgreSQL |
| Equipo en crecimiento | 5 a 20 | 30 a 100 | 8 GB | 4 vCPU | 80 GB NVMe | PostgreSQL |
| Empresa | 20+ | 100+ | 16 GB + | 8 vCPU | 160 GB NVMe | PostgreSQL con Redis |
YouStableLos planes VPS de n8n se corresponden directamente con estos niveles. vStart plan (4 GB RAMEl NVMe de 50 GB cubre las necesidades de equipos pequeños. vProfessional plan (8 GB RAMEl (100 GB NVMe) admite equipos en crecimiento. vPopular plan (16 GB RAM, 200 GB NVMe) y vStable plan (32 GB RAMLas unidades NVMe de 400 GB cubren las cargas de trabajo empresariales con capacidad de escalabilidad.
Variables ambientales críticas de un vistazo
| Variable | Propósito | Predeterminado | Recomendación de producción |
| N8N_ENCRYPTION_KEY | Cifra las credenciales almacenadas | Generado automáticamente | Configurar manualmente, realizar copias de seguridad por separado. |
| TIPO_DB | Motor de base de datos | sqlite | base de datos PostgreSQL |
| MODO_EJECUCIÓN | Arquitectura de ejecución | regular | cola (con Redis) |
| EJECUCIONES_DATOS_PRUEBA | Eliminar automáticamente las ejecuciones antiguas | false | su verdadero |
| N8N_BASIC_AUTH_ACTIVE | Habilitar la protección de inicio de sesión | false | su verdadero |
| URL_DE_WEBHOOK | Punto final de webhook público | Ninguna | Configúralo para tu dominio HTTPS |
| ZONA HORARIA GENÉRICA | Zona horaria del programador | UTC | Configúralo según tu zona horaria real. |
Guía de frecuencia de respaldo
| Tipo de datos | Método de respaldo | Frecuencia | Retención |
| Base de datos PostgreSQL | pg_dump más gzip | Diarios | 30 días |
| Exportación de flujo de trabajo n8n en formato JSON | Exportación CLI de n8n | Noticias | 90 días |
| Exportación de credenciales | Exportación CLI de n8n | Noticias | 90 días (encriptado) |
| Instantánea del VPS | Resumen del proveedor | Noticias | 4 semanas |
| archivo .env | Contraseña manager | En cada cambio | Indefinido |
Paso a paso: Configuración de un VPS n8n listo para producción
Esta es la lista de verificación completa para la puesta en producción. Siga estos pasos en orden para obtener una instancia n8n correctamente configurada desde el primer día.
Paso 1: Configure su VPS
Elija un proveedor cuya infraestructura esté verificada para cargas de trabajo de automatización. Si no está seguro de por dónde empezar, YouStableEl alojamiento VPS de n8n incluye soporte preconfigurado para Node.js, PM2 y Docker, y es gratuito. SSL En todos los planes. Seleccione Ubuntu 22.04 LTS como su sistema operativo. Habilite las instantáneas semanales automáticas al momento del aprovisionamiento.
Paso 2: Refuerzo inicial del servidor
sudo apt update && sudo apt upgrade -y
adduser n8nadmin
usermod -aG sudo n8nadmin
sudo sed -i 's/PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
sudo systemctl restart sshd
sudo ufw allow 22/tcp && sudo ufw allow 80/tcp && sudo ufw allow 443/tcp
sudo ufw enablePaso 3: Instalar Docker y Docker Compose
curl -fsSL https://get.docker.com | sudo sh
sudo usermod -aG docker n8nadmin
sudo apt install docker-compose-plugin -yPaso 4: Configurar n8n
Create /opt/n8n/. Add your docker-compose.yml from Mistake 2 and your .env file from Mistake 9, with all variables filled correctly.Paso 5: Configurar Nginx y SSL
Siga las Nginx Configuración del proxy inverso del error 3. Obtenga su certificado Let's Encrypt. Verifique que HTTPS funcione antes de continuar con el siguiente paso.
Paso 6: Iniciar n8n
cd /opt/n8n
docker compose up -d
docker compose ps
docker compose logs n8n --tail=50Paso 7: Configurar copias de seguridad automatizadas
Crea el script de copia de seguridad del Error 6. Añádelo a crontab. Ejecútalo manualmente una vez para confirmar que funciona antes de confiar en la programación.
Paso 8: Configurar la monitorización del tiempo de actividad.
Registra tu dominio n8n en UptimeRobot. Configura comprobaciones HTTP cada 5 minutos. Configura alertas por correo electrónico y SMS. Envía una alerta de prueba para confirmar la entrega antes de confiar en ella.
Paso 9: Habilitar el modo de cola
Agrega Redis a tu archivo docker compose.yml. Actualiza tu archivo .env con las variables del modo de cola. Reinicia con docker compose up -d. Confirma que todos los contenedores estén en buen estado.
Paso 10: Documente su configuración.
Guarda tu archivo .env con una contraseña. manager. Registre la IP del servidor, el dominio y todas las credenciales. Documente su cronograma de exportación de flujo de trabajo. Este paso evita horas de confusión en la respuesta a incidentes si algo sale mal dentro de tres meses.
Comparativa de opciones de alojamiento n8n: VPS vs. Nube vs. Docker local
Comprender dónde encaja un VPS autogestionado le ayudará a tomar una decisión de infraestructura con confianza.
| Factor | n8n Cloud (Oficial) | VPS autohospedado | Docker local |
| Costo mensual | Desde $ 20 por mes | $ 5 a $ 40 por mes | Cerca de cero |
| Tiempo de preparación | 5 minutos | 2-4 hrs | 30 minutos |
| Carga de mantenimiento | Ninguna | Media | Bajo |
| Control de datos | Limitado (servidores n8n) | Pleno | Pleno |
| Escalabilidad organizacional | Automático | Manual | Muy limitado |
| Fiabilidad del webhook | Excelente | Excelente con la configuración correcta. | Pobre (sin IP pública) |
| Ideal para | Equipos sin capacidad de DevOps | Control total con eficiencia presupuestaria | Solo desarrollo y pruebas |
Veredicto: Para la mayoría de los equipos pequeños y medianos, así como para los usuarios avanzados individuales, un VPS autogestionado con la configuración descrita en esta guía ofrece la mejor combinación de coste, control y fiabilidad.
n8n Cloud tiene sentido cuando tu equipo no cuenta con capacidad DevOps y el costo mensual es aceptable. Docker local solo es apropiado para el desarrollo. Nunca ejecutes flujos de trabajo de producción en una computadora portátil o servidor doméstico.
Errores comunes en VPS n8n y cómo solucionarlos
Error: “n8n: comando no encontrado” después de instalar npm
Causa: El directorio binario global de npm no se encuentra en la variable de entorno PATH del sistema.
Solución:
echo 'export PATH="$PATH:$(npm bin -g)"' >> ~/.bashrc
source ~/.bashrcEste error también es una señal para migrar a Docker. No se produce en implementaciones en contenedores.
Error: 502 Bad Gateway desde Nginx
Causa: n8n no se está ejecutando, se está ejecutando en el puerto incorrecto o Nginx está redirigiendo a la dirección incorrecta.
Diagnóstico:
docker compose ps
docker compose logs n8n | grep "Editor is now accessible"
curl http://127.0.0.1:5678Solución más común: La directiva proxy_pass utiliza http://localhost:5678, pero n8n está vinculado a 127.0.0.1:5678. Estos se comportan de manera diferente en algunos sistemas. Utilice http://127.0.0.1:5678 de forma consistente en su Nginx config.
Error: Tiempo de espera agotado en la ejecución del flujo de trabajo.
Causa: El flujo de trabajo dura más de lo esperado. Nginx Límite de tiempo de espera del proxy.
Solución: Añadir a tu Nginx bloque de servidor:
proxy_read_timeout 600s;
proxy_send_timeout 600s;
proxy_connect_timeout 75s;Para los flujos de trabajo que legítimamente requieren mucho tiempo, habilite también el modo de cola y configure EXECUTIONS_TIMEOUT en sus variables de entorno.
Error: Alto consumo de memoria o fallos por falta de memoria.
Causa: Demasiadas ejecuciones simultáneas para la capacidad disponible. RAMo una fuga de memoria en un nodo de código.
Secuencia de reparación: Habilitar el modo de cola con un límite de concurrencia. Comprobar si hay bucles infinitos en los nodos de código. Habilitar la eliminación de datos de ejecución. Actualizar VPS. RAM si todo lo anterior ya está implementado.
Error: Los webhooks no se activan.
Causa: La variable de entorno WEBHOOK_URL no existe o está configurada incorrectamente.
Solución:
docker compose exec n8n env | grep WEBHOOKLa salida debe mostrar su URL HTTPS pública completa con una barra diagonal al final, por ejemplo , https://tu-dominio.com/ . Sin la barra diagonal, n8n genera URL de webhook incorrectas a las que los servicios externos no pueden acceder.
Preguntas Frecuentes
¿Necesito un nombre de dominio para ejecutar n8n en un VPS?
Sí, se recomienda encarecidamente usar un nombre de dominio al ejecutar n8n en un VPS. Esto permite una configuración HTTPS adecuada, garantiza el correcto funcionamiento de los servicios de webhook y mejora la seguridad general. Sin un dominio, muchas integraciones pueden fallar o comportarse de forma inconsistente.
¿Por qué fallan aleatoriamente mis flujos de trabajo de n8n en un VPS?
Los fallos aleatorios en el flujo de trabajo suelen deberse a problemas del servidor, no a n8n en sí.
• Bajo RAM provocando fallos durante la ejecución
• Lenta CPU lo que genera retrasos y acumulación de trabajo.
• Variables de entorno faltantes o incorrectas
• No hay ningún sistema de monitorización configurado para detectar fallos.
La solución de estos problemas de infraestructura suele resolver la mayoría de los problemas de flujo de trabajo y mejora la estabilidad.
¿Es mejor el alojamiento VPS de n8n que el de n8n Cloud?
El alojamiento VPS de n8n ofrece control total sobre tus datos, mayor flexibilidad y menores costes a largo plazo. Sin embargo, requiere una configuración y un mantenimiento adecuados. Por otro lado, n8n Cloud es más fácil de usar al principio, pero ofrece un control limitado y puede resultar caro a medida que aumenta el uso.
¿Cuánto tiempo se tarda en configurar correctamente n8n en un VPS?
Configurar n8n en un VPS con una configuración lista para producción suele llevar entre 2 y 4 horas. Esto incluye instalar Docker, configurar SSL, configurando copias de seguridad, habilitando la seguridad y probando los flujos de trabajo para garantizar que todo funcione sin problemas.
Conclusión
Alojar n8n en un VPS es una de las formas más rentables y flexibles de ejecutar una infraestructura de automatización seria. La configuración es completamente manageEs posible si se realiza correctamente, y el trabajo de configuración necesario es una inversión única que da frutos durante años.
Los tres errores que causan mayores daños en el mundo real son: especificaciones de VPS insuficientes que provocan fallos bajo carga, la falta de HTTPS y autenticación que exponen tus credenciales a internet, y la ausencia de monitorización que permite que los fallos pasen desapercibidos durante días.
Soluciona primero esos tres problemas. Luego, completa la lista de verificación: instalación basada en Docker, base de datos PostgreSQL, copias de seguridad automatizadas, modo de cola para flujos de trabajo concurrentes y configuración completa de variables de entorno. Cada paso se basa en el anterior para crear una plataforma de automatización robusta, segura y escalable.
La configuración necesaria para que esto funcione correctamente lleva aproximadamente 4 horas en un servidor limpio. Esta inversión de 4 horas elimina los fallos de producción a altas horas de la madrugada que las empresas que dependen de la automatización no pueden permitirse.
Si desea reducir significativamente ese tiempo de configuración, YouStableEl servicio de alojamiento VPS n8n gestiona la capa de infraestructura por usted. Los planes vienen preconfigurados con soporte para Node.js, PM2 y Docker, y son gratuitos. SSLy copias de seguridad automáticas semanales. El equipo de soporte humano disponible las 24 horas del día, los 7 días de la semana (no bots) puede ayudar con preguntas específicas sobre la configuración de n8n, lo que significa menos tiempo dedicado a depurar la infraestructura y más tiempo para crear las automatizaciones importantes.
Explorar YouStable Planes de alojamiento VPS de n8n
Este artículo refleja la experiencia práctica de pruebas y despliegue en producción con n8n v1.x en Ubuntu 22.04. Todos los comandos y ejemplos de configuración se verificaron en octubre de 2026. Para obtener la referencia de configuración más reciente de n8n, consulte la documentación oficial en docs.n8n.io.
