n8n (neu)

n8n (neu)

Server vorbereiten

System aktualisieren

sudo apt update && sudo apt upgrade -y
sudo apt install -y curl wget git ufw build-essential python3 nodejs

Firewall (UFW) konfigurieren

# Standardregeln setzen (SSH, HTTP, HTTPS)
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# Firewall aktivieren
sudo ufw --force enable
sudo ufw status

Node.js installieren

# NodeSource-Repository hinzufügen (für Node.js 22.x)
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -

# Node.js und npm installieren
sudo apt install -y nodejs

# Überprüfen
node --version  # Sollte >= 22.x anzeigen

n8n installieren

n8n global installieren (empfohlen für Produktion)

sudo npm install -g n8n

Die Installation dauert einige Minuten und es werden einige Warnungen angezeigt, die ignoriert werden können.

n8n als Systemdienst einrichten

n8n-Installationspfad herausfinden

which n8n # angezeigten Pfad merken

Dienst-Datei erstellen

sudo nano /etc/systemd/system/n8n.service

Inhalt einfügen

[Unit]
Description=n8n Workflow Automation
After=network.target

[Service]
ExecStart=/usr/bin/n8n # ✏️ n8n-Installationspfad anpassen
User=root
Environment=N8N_TRUST_PROXY=true
Environment=N8N_HOST=n8n.dein-server.de # ✏️ Domain anpassen
Environment=N8N_PORT=5678
Environment=N8N_PROTOCOL=https
Environment=N8N_WEBHOOK_URL=https://n8n.dein-server.de/ # ✏️ Domain anpassen + abschließender Slash!
Environment=N8N_EDITOR_BASE_URL=https://n8n.dein-server.de # ✏️ Domain anpassen
Environment=N8N_PROXY_HOPS=1

Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

Dienst aktivieren und starten

sudo systemctl daemon-reload
sudo systemctl enable n8n
sudo systemctl start n8n
sudo systemctl status n8n

SSL mit Let’s Encrypt (Certbot) einrichten

Certbot installieren

sudo apt install -y certbot python3-certbot-nginx

Nginx als Reverse-Proxy installieren

sudo apt install -y nginx

Nginx-Konfiguration für n8n

Proxy-Konfigurationsdatei erstellen

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

Inhalt einfügen

server {
    listen 80;
    server_name n8n.dein-server.de;  # ✏️ Domain anpassen

    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 https;
        proxy_set_header X-Forwarded-Port 443;
    }
}

Konfiguration aktivieren

sudo ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/
sudo nginx -t  # Testen
sudo systemctl restart nginx

SSL-Zertifikat anfordern

sudo certbot --nginx -d n8n.dein-server.de  # ✏️ Domain anpassen

Automatische Zertifikatsverlängerung einrichten

sudo certbot renew --dry-run  # Testlauf

Automatische Updates einrichten

Automatische Systemupdates (unattended-upgrades)

sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure unattended-upgrades  # Mit "Ja" bestätigen

Konfiguration anpassen

sudo nano /etc/apt/apt.conf.d/50unattended-upgrades

Folgende Zeilen sicherstellen (entkommentieren):

Unattended-Upgrade::Allowed-Origins {
    "${distro_id}:${distro_codename}";
    "${distro_id}:${distro_codename}-security";
    "${distro_id}ESM:${distro_codename}";
};
Unattended-Upgrade::Automatic-Reboot "true";

Wenn du nicht sofort, sondern zu einer bestimmten Uhrzeit bei einem Update mit Neustart neu starten möchtest, kannst du mit der folgenden Option die Uhrzeit festlegen:

Unattended-Upgrade::Automatic-Reboot-Time "02:00";

Automatische Updates aktivieren

sudo systemctl enable unattended-upgrades
sudo systemctl start unattended-upgrades

Automatische n8n-Updates

Skript für n8n-Update erstellen

sudo nano /usr/local/bin/update_n8n.sh

Inhalt einfügen

#!/bin/bash

# n8n stoppen
systemctl stop n8n

# n8n aktualisieren
npm install -g n8n

# n8n neu starten
systemctl start n8n

# Log-Eintrag
echo "n8n updated on $(date)" >> /var/log/n8n_updates.log

Skript ausführbar machen

sudo chmod +x /usr/local/bin/update_n8n.sh

Cron-Job für tägliche Updates einrichten

sudo crontab -e

Füge folgende Zeile hinzu

0 3 * * * /usr/local/bin/update_n8n.sh  # Jeden Tag um 3:00 Uhr

Installation überprüfen

n8n-Dienst prüfen

sudo systemctl status n8n

✅ Wir erwarten

● n8n.service - n8n Workflow Automation
     Loaded: loaded (/etc/systemd/system/n8n.service; enabled; preset: enabled)
     Active: active (running) since Sun 2026-08-23 10:47:07 UTC; 18min ago
 Invocation: 553e06f796924a1f8a4d61b9f96e4373
    Process: 12987 ExecStart=/usr/local/bin/n8n (code=exited, status=203/EXEC)
   Main PID: 12987 (code=exited, status=203/EXEC)
   Mem peak: 1.7M
        CPU: 16ms

Nginx prüfen

sudo systemctl status nginx

✅ Wir erwarten

 nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; preset: enabled)
     Active: active (running) since Sun 2026-08-23 10:47:46 UTC; 18min ago
 Invocation: 003a35cb62914456b70a747a7018c31f
       Docs: man:nginx(8)
   Main PID: 12115 (nginx)
      Tasks: 3 (limit: 3647)
     Memory: 3.3M (peak: 5.9M)
        CPU: 207ms
     CGroup: /system.slice/nginx.service
             ├─12115 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;"
             ├─12204 "nginx: worker process"
             └─12205 "nginx: worker process"

SSL-Zertifikat prüfen

sudo certbot certificates

✅ Wir erwarten

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Found the following certs:
  Certificate Name: n8n.dein-server.de
    Serial Number: 12345678901234567890123456789012345
    Key Type: ECDSA
    Domains: n8n.dein-server.de
    Expiry Date: 2026-11-21 10:23:49+00:00 (VALID: 89 days)
    Certificate Path: /etc/letsencrypt/live/n8n.dein-server.de/fullchain.pem
    Private Key Path: /etc/letsencrypt/live/n8n.dein-server.de/privkey.pem
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

n8n im Browser öffnen

https://n8n.dein-server.de # Adresse an deine Adresse anpassen

✅ Wir erwarten

  • Login-Fenster, in dem du den Admin-Account anlegen musst
  • danach eine kleine Umfrage, die du beantworten kannst
  • einen Willkommens-Bildschirm von n8n 🥳

n8n (neu)

Ersten Kommentar schreiben

Antworten

Deine E-Mail-Adresse wird nicht veröffentlicht.


*