logo Verificaremails
logo VerificarEmails
Inicio / N8N / La Guía Completa para Autoalojar n8n: Configuración, Seguridad y Mejores Prácticas

La Guía Completa para Autoalojar n8n: Configuración, Seguridad y Mejores Prácticas

¿Sabías que autoalojar n8n te permite reducir tus costos de automatización de 24€ a solo 9€ mensuales? En este artículo aprenderás cómo configurar tu propia instancia de n8n sin limitaciones y con control total sobre tus automatizaciones.

N8n es una plataforma de automatización de flujos de trabajo de código abierto que te otorga control completo sobre tus integraciones y datos. A diferencia de soluciones como Zapier, puedes instalarlo en tu propia infraestructura y personalizarlo según tus necesidades específicas.

Cuando autoalojas n8n, ejecutas la aplicación en tu propio servidor en lugar de depender de servicios en la nube. Esto te proporciona control total sobre recursos, configuraciones y datos, además de eliminar las restricciones de los planes de pago.

A continuación, te mostraremos paso a paso cómo instalar y configurar n8n de forma segura. Cubriremos desde los requisitos básicos hasta las mejores prácticas de seguridad para mantener tu instalación funcionando sin problemas.

Para nuestro ejemplo, utilizaremos un servidor con 2 núcleos de CPU, 2 GB de RAM y 40 GB de almacenamiento. Estos recursos son suficientes para ejecutar n8n eficientemente y te permitirán crear automatizaciones potentes sin las limitaciones de los planes comerciales.

Recuerda que al finalizar este tutorial tendrás una herramienta de automatización completamente personalizable, con acceso a todas las funciones de n8n y un ahorro significativo en costos operativos.

Puntos Clave N8N Self Hosted

Autoalojar n8n te permite ahorrar hasta un 62% en costos mensuales mientras obtienes control total sobre tus automatizaciones, desde solo 9€/mes versus 24€ del plan básico SaaS.

Requisitos mínimos: Servidor Ubuntu 22.04+, Docker, dominio propio y mínimo 2GB RAM para ejecutar n8n de forma estable en producción.

Seguridad esencial: Configura HTTPS con Nginx + Certbot, activa autenticación básica y usa variables de entorno seguras para proteger credenciales.

Docker Compose simplifica todo: Un solo archivo YAML gestiona n8n + PostgreSQL, facilitando instalación, actualizaciones y mantenimiento futuro.

Webhooks requieren configuración específica: Valida DNS, usa HTTPS completo en WEBHOOK_URL y evita números de puerto para funcionamiento correcto.

Mantenimiento preventivo: Realiza backups regulares de volúmenes Docker, ajusta NODE_OPTIONS para evitar fugas de memoria y actualiza de forma segura.

Con la configuración adecuada, n8n autoalojado se convierte en una herramienta de automatización empresarial sin las limitaciones de los planes SaaS, ofreciendo escalabilidad total y privacidad de datos en tu propia infraestructura.

Requisitos técnicos para autoalojar n8n en producción

Para configurar n8n en tu propio servidor, necesitas preparar una infraestructura básica que garantice estabilidad y rendimiento óptimo. Si bien la flexibilidad del autoalojamiento es una gran ventaja, establecer una base técnica sólida resulta fundamental para el éxito de tu implementación.

Servidor Ubuntu 22.04+ con acceso root

Ubuntu 22.04 LTS o versiones posteriores representan la opción más recomendada para desplegar n8n en producción. Esta distribución te ofrece estabilidad a largo plazo y compatibilidad completa con todas las dependencias que n8n necesita para funcionar correctamente.

El acceso root o privilegios sudo son indispensables para completar la instalación. Con estos permisos podrás realizar las siguientes tareas esenciales:

  • Actualizar paquetes del sistema operativo
  • Instalar Docker y sus dependencias
  • Configurar servicios de red y puertos
  • Gestionar certificados SSL automáticamente

Antes de proceder con la instalación, actualiza tu sistema:

sudo apt update && sudo apt upgrade

Instalación de Docker y Docker Compose

Te recomendamos utilizar Docker para desplegar n8n, ya que esta solución encapsula la aplicación con todas sus dependencias en un contenedor aislado. Los beneficios principales incluyen:

  • Estabilidad garantizada: las actualizaciones del sistema no afectarán tu instalación
  • Actualizaciones sencillas: migra a nuevas versiones con comandos simples
  • Mantenimiento mínimo: perfecto si tienes recursos técnicos limitados

Instala Docker y Docker Compose ejecutando:

sudo apt install docker.io docker-compose -y

Verifica que la instalación funciona correctamente:

sudo docker run hello-world

Si aparece el mensaje “hello-world”, Docker está listo para usar.

Dominio apuntando a la IP del servidor

Para acceder a n8n desde cualquier ubicación, configura un dominio o subdominio que direccione hacia la IP de tu servidor. Esta configuración permite:

  1. Acceso remoto seguro a tu instancia
  2. Funcionamiento correcto de certificados SSL
  3. Operación adecuada de webhooks y notificaciones

En tu proveedor de DNS, crea este registro A:

Tipo de registro Nombre Destino
A n8n (o tu subdominio preferido) <IP_de_tu_servidor>

Una vez configurado, accederás a n8n mediante HTTPS en la URL que hayas establecido (por ejemplo: https://n8n.tudominio.com).

Recomendaciones de recursos: 2 GB RAM mínimo

N8n no demanda recursos intensivos de CPU, pero sí requiere memoria suficiente para procesar flujos de trabajo complejos. Las especificaciones recomendadas son:

  • RAM: 2 GB mínimo, 4 GB para uso intensivo en producción
  • CPU: 2 núcleos/vCPUs cubren la mayoría de necesidades
  • Almacenamiento: 20-40 GB en SSD para mejor rendimiento
  • Conexión: Internet estable y confiable

Es importante tener en cuenta que n8n consume más memoria que procesador. Una instancia básica utiliza aproximadamente 100 MB en reposo, pero este consumo aumenta considerablemente según la complejidad de tus automatizaciones y el volumen de datos procesados.

Para implementaciones pequeñas y medianas, un VPS económico resulta suficiente. Puedes encontrar opciones desde 5-10€ mensuales en proveedores como Hetzner[82], lo que representa un ahorro significativo comparado con planes SaaS comerciales.

Instalación de n8n con Docker Compose paso a paso

Diagrama que muestra la instancia principal de n8n conectada a Redis y a la base de datos, las cuales interactúan con múltiples instancias de n8n worker.

Image Source: Medium

Ya tienes preparado tu servidor con todos los requisitos técnicos. Es momento de instalar n8n utilizando Docker Compose, la forma más eficiente para desplegar esta plataforma en producción.

Paso 1: Crear el archivo docker-compose.yml

Crea un directorio específico para n8n y el archivo de configuración:

mkdir ~/n8n && cd ~/n8n
nano docker-compose.yml

Copia el siguiente contenido en el archivo docker-compose.yml:

version: '3.7'

services:
  db:
    image: postgres:14
    restart: unless-stopped
    environment:
      - POSTGRES_USER=n8n
      - POSTGRES_PASSWORD=n8npass
      - POSTGRES_DB=n8n
    volumes:
      - postgres_data:/var/lib/postgresql/data

  n8n:
    image: n8nio/n8n
    restart: unless-stopped
    ports:
      - "5678:5678"
    environment:
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=db
      - DB_POSTGRESDB_DATABASE=n8n
      - DB_POSTGRESDB_USER=n8n
      - DB_POSTGRESDB_PASSWORD=n8npass
      - N8N_HOST=tudominio.com
      - N8N_PROTOCOL=https
    volumes:
      - n8n_data:/home/node/.n8n
    depends_on:
      - db

volumes:
  postgres_data:
  n8n_data:

Este archivo define dos servicios esenciales: n8n y PostgreSQL. Los volúmenes persistentes garantizan que tus datos se mantengan seguros incluso al reiniciar contenedores.

Paso 2: Configurar PostgreSQL como base de datos

Por defecto, n8n utiliza SQLite, pero PostgreSQL ofrece mejor rendimiento y confiabilidad para entornos de producción. Las variables de configuración más importantes son:

  • DB_TYPE=postgresdb: Utiliza PostgreSQL en lugar de SQLite
  • DB_POSTGRESDB_HOST=db: Nombre del servicio de base de datos
  • DB_POSTGRESDB_DATABASE=n8n: Nombre de la base de datos
  • DB_POSTGRESDB_USER=n8n: Usuario de acceso
  • DB_POSTGRESDB_PASSWORD=n8npass: Contraseña (cámbiala por una segura)

Importante: N8n necesita privilegios para crear y modificar esquemas de tablas. La configuración que mostramos incluye todos los permisos necesarios.

Paso 3: Variables de entorno para seguridad básica

Configura la seguridad inicial mediante estas variables de entorno en docker-compose.yml:

  • N8N_BASIC_AUTH_ACTIVE=true: Activa autenticación básica
  • N8N_BASIC_AUTH_USER=admin: Usuario de acceso a n8n
  • N8N_BASIC_AUTH_PASSWORD=strongpass: Contraseña robusta
  • N8N_HOST=tudominio.com: Dominio de acceso a n8n
  • N8N_PROTOCOL=https: Protocolo para producción
  • N8N_ENCRYPTION_KEY=tu_clave_segura: Clave para cifrar credenciales en la base de datos

Te recomendamos definir tu propia clave de cifrado si planeas múltiples instancias o copias de seguridad. N8n genera una clave aleatoria por defecto, pero tener control sobre ella te dará más flexibilidad.

Paso 4: Iniciar contenedores y verificar funcionamiento

Inicia los contenedores en segundo plano:

docker-compose up -d

Verifica que todo funcione correctamente revisando los logs:

docker-compose logs -f n8n

Accede a n8n desde tu navegador:

http://tu_ip_servidor:5678

Si configuraste un dominio sin HTTPS, verás advertencias de seguridad. N8n utiliza cookies seguras por defecto que requieren HTTPS. Para desarrollo puedes añadir N8N_SECURE_COOKIE=false, pero en producción configura HTTPS con certificados válidos.

Para futuras actualizaciones, solo necesitas estos comandos:

docker-compose pull
docker-compose down
docker-compose up -d

Con estos pasos tienes n8n funcionando con Docker Compose. El siguiente paso es configurar HTTPS para asegurar tu instalación y comenzar a crear flujos de trabajo automatizados.

¿Cómo configurar HTTPS y autenticación segura en n8n?

Diagrama que muestra la configuración de red con red interna, túnel VPN, firewall, DMZ y conectividad con servicios externos

Image Source: n8n Community

Configurar correctamente la seguridad es fundamental para proteger tu instalación de n8n. Sin HTTPS y autenticación adecuada, tus flujos de trabajo y credenciales quedan expuestos a riesgos innecesarios.

Paso 1: Instala Nginx y Certbot para certificados SSL

Para implementar HTTPS en tu instancia, necesitas instalar Nginx como proxy inverso y Certbot para gestionar certificados SSL gratuitos de Let’s Encrypt:

sudo apt install nginx
sudo apt install certbot python3-certbot-nginx

Estas herramientas te proporcionan todo lo necesario para crear una capa de seguridad robusta.

Paso 2: Configura el proxy inverso con certificados SSL

Después de instalar Nginx, crea un archivo de configuración específico para n8n:

sudo nano /etc/nginx/sites-available/n8n

Añade la siguiente configuración, reemplazando n8n.tudominio.com con tu dominio real:

server {
    listen 80;
    server_name n8n.tudominio.com;
    location / {
        proxy_pass http://localhost:5678;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        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;
    }
}

Una vez creado el archivo, activa la configuración y solicita tu certificado SSL:

sudo ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
sudo certbot --nginx -d n8n.tudominio.com

Certbot modificará automáticamente tu configuración de Nginx para incluir el certificado SSL y redireccionar todo el tráfico HTTP a HTTPS.

Paso 3: Configura autenticación básica y cookies seguras

N8n utiliza cookies seguras por defecto, que requieren HTTPS para funcionar correctamente. Si intentas acceder mediante HTTP, verás errores de cookies.

Para establecer credenciales seguras, modifica tu archivo docker-compose.yml añadiendo estas variables de entorno:

environment:
  - N8N_BASIC_AUTH_ACTIVE=true
  - N8N_BASIC_AUTH_USER=admin
  - N8N_BASIC_AUTH_PASSWORD=contraseña_muy_segura
  - N8N_HOST=n8n.tudominio.com
  - N8N_PROTOCOL=https
  - N8N_ENCRYPTION_KEY=tu_clave_segura_personalizada
  - WEBHOOK_URL=https://n8n.tudominio.com/

Importante: La variable N8N_HOST debe contener solo el nombre de dominio (sin puerto ni protocolo), mientras que WEBHOOK_URL debe incluir el protocolo HTTPS completo.

Esta configuración permite que los webhooks funcionen correctamente y que las integraciones OAuth se conecten sin problemas.

Para verificar que la renovación automática de certificados está configurada correctamente, ejecuta:

sudo systemctl status certbot.timer

Con esta configuración, tu instancia de n8n quedará protegida con HTTPS y autenticación básica, lista para el siguiente paso de configuración.

Tu primer flujo de trabajo en n8n

Captura de pantalla del editor de workflows de n8n que muestra un flujo de chat con un agente de IA utilizando OpenAI, memoria, SerpAPI y acciones de mensajes en Slack.

Image Source: GitHub

Una vez configurada tu instancia, es momento de crear tu primer flujo automatizado para verificar que todo funciona correctamente.

Configuración inicial de tu cuenta

Al acceder por primera vez a tu instalación de n8n, deberás crear una cuenta de administrador. Introduce tu correo electrónico y una contraseña segura. Esta cuenta tendrá control completo sobre todos los flujos de trabajo y credenciales de tu instancia.

Navegación por el editor visual

El editor de n8n te permite crear automatizaciones arrastrando y conectando nodos en un lienzo visual. En el panel izquierdo encontrarás el Overview para gestionar todos tus flujos y el historial de ejecuciones. La barra superior incluye controles para activar, guardar y compartir tus flujos.

Para crear tu primer flujo, selecciona “Workflow” desde el menú principal.

Creación de un flujo básico con webhook

Te mostraremos cómo crear un flujo sencillo que reciba datos y responda automáticamente:

Paso 1: Añade un nodo “Webhook” haciendo clic en el botón “+” del lienzo.

Paso 2: Configura el webhook con método HTTP POST y selecciona la opción “Respond using ‘Respond to Webhook’ node”.

Paso 3: Conecta un nodo “Set” para procesar los datos recibidos.

Paso 4: Finaliza añadiendo un nodo “Respond to Webhook” para devolver una respuesta personalizada.

Activación y prueba del flujo

Guarda tu flujo y actívalo utilizando el interruptor en la parte superior. Para verificar su funcionamiento, utiliza este comando curl:

curl -X POST https://n8n.tudominio.com/webhook/path -H "Content-Type: application/json" -d '{"dato":"valor"}'

Verás la respuesta configurada en tu nodo final y podrás revisar los detalles de la ejecución en el panel de historial.

Recuerda que este es solo un ejemplo básico. N8n permite crear automatizaciones mucho más complejas conectando servicios externos, procesando datos y ejecutando acciones avanzadas.

Problemas frecuentes y cómo mantener tu instalación sin errores

Diagrama que muestra una pila completa de automatización con IA usando el motor de workflows de n8n, modelos de IA locales en GPU y el toolkit Docker MCP para acceso seguro.

Image Source: Ajeet Singh Raina

Una vez que tienes n8n funcionando, es importante conocer los errores más habituales y cómo resolverlos rápidamente. En esta sección aprenderás a mantener tu instancia autoalojada funcionando de forma estable.

Error 401: Verificar credenciales de acceso

¿Te aparece un error 401 al intentar acceder? Este problema suele ocurrir cuando las credenciales están mal configuradas. Para solucionarlo, revisa estas variables en tu archivo docker-compose.yml:

  • N8N_BASIC_AUTH_USER: Usuario para acceder a n8n
  • N8N_BASIC_AUTH_PASSWORD: Contraseña del usuario

Si utilizas tokens de API externos, recuerda incluir el prefijo “Bearer” de esta forma: Bearer <tu-token-api>.

Webhooks que no funcionan: Comprobar DNS y configuración

Los webhooks son fundamentales para muchas automatizaciones. Si no funcionan correctamente, sigue estos pasos:

Paso 1: Verifica que tu dominio apunta a la IP correcta con nslookup n8n.tudominio.com

Paso 2: Asegúrate de que WEBHOOK_URL incluye HTTPS completo

Paso 3: Confirma que no aparezcan números de puerto (:5678) en las URLs de webhook

Si utilizas Traefik, puedes revisar los logs con:

docker logs traefik | grep -i certificate

Memoria insuficiente: Configurar NODE_OPTIONS

N8n puede requerir más memoria al procesar grandes volúmenes de datos. Para evitar el error “JavaScript heap out of memory”, añade esta variable de entorno:

environment:
  - NODE_OPTIONS=--max-old-space-size=2048

Esta configuración asigna 2GB de memoria al motor JavaScript, suficiente para la mayoría de casos de uso.

Copias de seguridad: Proteger tus datos

Te recomendamos realizar copias de seguridad regulares de los volúmenes n8n_data y postgres_data. Para respaldar la base de datos PostgreSQL, ejecuta:

docker exec nombre_contenedor_postgres pg_dump -U n8n n8n > backup_n8n_$(date +%Y%m%d).sql

Actualizaciones seguras: Mantener n8n al día

Para actualizar n8n sin perder configuraciones, utiliza estos comandos:

docker-compose pull
docker-compose down
docker-compose up -d

Recuerda que siempre debes hacer una copia de seguridad antes de actualizar para evitar pérdida de datos.

Si tienes alguna pregunta sobre el mantenimiento de tu instalación, nuestro equipo de soporte estará encantado de ayudarte.

¿Qué has conseguido con tu instalación de n8n autoalojado?

!Diagram showing a complete AI automation stack using n8n workflow engine, local AI models on GPU, and Docker MCP toolkit for secure access.

Image Source: Ajeet Singh Raina

Autoalojar n8n te permite tener control total sobre tus automatizaciones mientras ahorras más del 60% comparado con los planes de pago comerciales. A través de esta guía has configurado una instalación completa, desde los requisitos básicos hasta la implementación de HTTPS y la creación de tus primeros flujos automatizados.

Los beneficios son claros: por apenas 9€ mensuales dispones de una plataforma de automatización sin limitaciones, frente a los 24€ de los planes básicos comerciales. Además, tienes libertad completa para personalizar recursos, configuraciones y escalabilidad según tus necesidades.

La seguridad que has implementado con Nginx, certificados SSL y autenticación básica protege tanto tus flujos de trabajo como tus credenciales. Esta configuración profesional garantiza que tu instalación esté lista para entornos de producción.

Para mantener tu instancia funcionando correctamente, recuerda aplicar las estrategias de mantenimiento que hemos cubierto: copias de seguridad regulares, actualizaciones seguras y resolución rápida de problemas comunes.

Si necesitas ayuda para implementar n8n en tu empresa de forma profesional, contáctanos y te mostraremos cómo aprovechar al máximo esta herramienta. Con la configuración adecuada, n8n eliminará tareas repetitivas y te permitirá concentrarte en hacer crecer tu negocio.

¿Tu siguiente paso? Comienza creando flujos más complejos, conecta servicios externos mediante webhooks y explora las integraciones avanzadas. Tu instalación autoalojada te ofrece un control completo para desarrollar automatizaciones que se adapten perfectamente a tus objetivos específicos.

 

FAQs

Q1. ¿Cuáles son los requisitos mínimos para autoalojar n8n?
Para autoalojar n8n se necesita un servidor con Ubuntu 22.04 o superior, Docker y Docker Compose instalados, un dominio apuntando al servidor, y al menos 2 GB de RAM. Se recomienda un mínimo de 2 núcleos de CPU y 20-40 GB de almacenamiento SSD.

Q2. ¿Cómo puedo configurar HTTPS para mi instancia autoalojada de n8n?
Para configurar HTTPS, instala Nginx y Certbot en tu servidor. Crea un archivo de configuración de Nginx para n8n, solicita un certificado SSL con Certbot, y configura las variables de entorno N8N_PROTOCOL y WEBHOOK_URL en tu archivo docker-compose.yml para usar https.

Q3. ¿Qué medidas de seguridad debo implementar en mi instalación de n8n?
Implementa autenticación básica configurando las variables N8N_BASIC_AUTH_ACTIVE, N8N_BASIC_AUTH_USER y N8N_BASIC_AUTH_PASSWORD. Usa HTTPS, configura una clave de cifrado personalizada con N8N_ENCRYPTION_KEY, y mantén tu sistema y n8n actualizados regularmente.

Q4. ¿Cómo puedo hacer copias de seguridad de mi instancia de n8n?
Realiza copias de seguridad regulares de los volúmenes de Docker n8n_data y postgres_data. Para la base de datos PostgreSQL, puedes usar el comando pg_dump desde dentro del contenedor. Siempre haz una copia de seguridad antes de actualizar la versión de n8n.

Q5. ¿Cuáles son los errores más comunes al autoalojar n8n y cómo solucionarlos?
Los errores más comunes incluyen problemas de autenticación (error 401), fallos en webhooks por configuración incorrecta de DNS o puertos, y fugas de memoria. Verifica las credenciales, asegúrate de que el dominio apunte correctamente al servidor, configura correctamente WEBHOOK_URL, y ajusta NODE_OPTIONS para manejar la memoria si es necesario.

Logo VerificareEmails
Cerrar menú de navegación
— MEJORA LA CALIDAD DE TUS DATOS DE FORMA SIMPLE —
vERIFICA EMAILS
TELÉFONOS,
DIRECCIONES POSTALES
NOMBRES Y aPELLIDOS...