---
title: Architektur
description: Wie NexCMP aufgebaut ist: Domain, nginx, Panel- und Worker-Dienste sowie jedes angebundene System mit den jeweils verwendeten Ports und Datenpfaden.
url: https://nexcmp.com/de/docs/infrastructure/architecture/
applies_to: NexCMP 1.6.1
updated: 2026-11-02
---

# Architektur {#architecture}

> **Wo im Adminbereich:** Dies ist eine Referenzseite. Die hier beschriebenen Dienste sind mit `sudo nexcmp status` sichtbar; Verbindungen werden unter Infrastructure und System › Settings konfiguriert.

## Die Übersicht {#the-picture}

![NexCMP-Architektur: Kunden erreichen nginx über DNS und optional Cloudflare, nginx leitet an das Panel auf Port 3000 weiter, Panel und Worker kommunizieren mit CloudStack, Proxmox VE, iDRAC, Ceph, Zahlungs-Gateways, SMTP und einem KI-Anbieter, und VPN- sowie IPv6-Proxy-Knoten funken an das Panel zurück](https://nexcmp.com/de/docs/images/infrastructure/architecture.svg)

### Dasselbe Diagramm in Worten {#the-same-diagram-in-words}

1. Ein Kunde oder Administrator öffnet `https://cloud.example.com` (das Portal), `https://cloud.example.com/admin` (die Admin-Konsole) oder ruft die REST API auf. DNS leitet den Namen auf Ihren Server oder auf Cloudflare weiter, das als Proxy dert
2. **nginx** auf dem Panel-Server lauscht auf den Ports 80 (Weiterleitung und Zertifikatserneuerung) und 443 (TLS) und leitet jede Anfrage an das **Panel** unter `127.0.0.1:3000` weiter. Nach dem Setup-Assistenten lauscht das Panel nur auf der Loopback-Schnittstelle.
3. Das **Panel** (`nexcmp.service`) stellt das Kundenportal, die Admin-Konsole, die REST API, den Setup-Assistenten und die von Knoten benötigten Downloads (die Agent-Binärdatei, das Installationsskript, das `cmp`-Befehlszeilentool) bereit. Außerdem prüft es einmal täglich Ihre Lizenz.
4. Der **Worker** (`nexcmp-vmd.service`) lauscht auf `127.0.0.1:8112`, was nur lokal ist. Er führt alles aus, was Zeit beansprucht oder nach Zeitplan ablaufen muss: Bereitstellungsaufträge, Synchronisierung mit CloudStack und Proxmox VE, Abrechnungstakte, Bandbreitenerfassung und die Browser-Konsolenverbindungen.
5. Von diesen beiden Prozessen aus initiiert NexCMP ausgehende Verbindungen zu: **CloudStack** (Management-API), **Proxmox VE** (API auf Port 8006, Zertifikat gepinnt), **Dell iDRAC** (Redfish über HTTPS im Verwaltungsnetzwerk), **Ceph RGW** (S3 und Admin Ops über HTTPS), **Zahlungs-Gateways** (Stripe, PayPal, USDT und Banküberweisungsanbieter, die auch Ihre Webhook-URLs aufrufen), **Ihrem SMTP-Server**, einem **KI-Anbieter** mit einer OpenAI-kompatiblen API und optional **Telegram**.
6. **VPN-Knoten** führen `cmp-agent` aus. Jeder Knoten registriert sich einmal mit einem Einmal-Token, sendet dann alle 5 Sekunden einen Heartbeat per HTTPS an das Panel und erhält in der Antwort seine Konfiguration. **IPv6-Proxy-Knoten** werden einmalig vom Panel über SSH installiert und rufen ihre Konfiguration anschließend vom Panel ab.
7. Der Status wird in SQLite-Datenbanken und einigen Dateien in `/var/lib/nexcmp` gespeichert. Anmeldedaten für CloudStack, Proxmox, S3, iDRAC und den KI-Anbieter werden verschlüsselt (AES-256-GCM) mit Master-Schlüsseldateien im selben Bereich gespeichert.

## Dienste und Prozesse {#services-and-processes}

| Prozess | Ausführung als | Lauscht auf | Funktion |
|---|---|---|---|
| `nginx` | root (Worker `www-data`) | 80, 443 | TLS, Weiterleitung, Proxy zum Panel |
| `nexcmp` | `nexcmp` | 3000 (alle Schnittstellen während der Erstinstallation, danach `127.0.0.1`) | Portal, Admin-Konsole, API, Assistent, Downloads |
| `nexcmp-vmd` | `nexcmp` | `127.0.0.1:8112` | Jobs, Synchronisierung, Abrechnung, Bandbreite, Konsole |
| `nexcmp-update` | root | keine | Führt Updates aus, die die Admin-Konsole anfordert (eine Path-Unit wartet auf die Anfrage) |
| `cmp-agent` (auf VPN-Knoten) | root | Die VPN-Listener-Ports | Meldet sich an das Panel, betreibt Proxy-Listener auf öffentlichen IPv4-Adressen |

Das Panel und der Worker laufen als gewöhnlicher Benutzer ohne Linux-Capabilities und mit einem schreibgeschützten Dateisystem mit Ausnahme von `/var/lib/nexcmp` und `/var/log/nexcmp`. Sie benötigen weder root, Docker, eine separate Datenbank noch Redis.

## Dateien und ihre Speicherorte {#files-and-where-they-are}

| Pfad | Inhalt |
|---|---|
| `/opt/nexcmp` | Das Programm: Releases, `bin/`, freigegebene Dateien wie der Template Builder. Gehört root, für den Dienst schreibgeschützt. |
| `/etc/nexcmp` | Installatoreinstellungen (`install.conf`), Port und Bindung (`nexcmp.env`). |
| `/var/lib/nexcmp` | SQLite-Datenbänke, hochgeladenes Branding, der Agent-Download-Ordner, Lizenzstatus, die Master-Key-Dateien. Sichern Sie diese. |
| `/var/log/nexcmp` | Protokolle. |

Siehe [Backup and restore](https://nexcmp.com/de/docs/getting-started/backup-and-restore/). Die Master-Key-Dateien müssen zusammen mit den Datenbanken gesichert werden, da eine wiederhergestellte Datenbank andernfalls ihre gespeicherten Anmeldeinformationen nicht entschlüsseln kann.

## Wer verbindet sich mit wem {#who-connects-to-whom}

| Richtung | Pfad | Port | Hinweise |
|---|---|---|---|
| Kunde an Panel | Internet, DNS, optionales Cloudflare, nginx | 443 | Siehe [DNS and Cloudflare](https://nexcmp.com/de/docs/getting-started/dns-and-cloudflare/). |
| Panel an Lizenzserver | `nexcmp.com` | 443 | Aktivierung, tägliche Prüfung und Updates. |
| Panel an CloudStack | API | 443 oder 8080 | Die VM-Konsole, Bandbreiten- und Kubernetes-Funktionen verwenden denselben Endpunkt. |
| Panel an Proxmox VE | API und WebSocket-Konsole | 8006 | Zertifikat per SHA-256-Prüfsumme angeheftet. |
| Panel an iDRAC | Redfish | 443, VNC 5901 | Nur Management-Netzwerk. |
| iDRAC an ISO-Server | HTTP | Ihr Port | Der iDRAC ruft das ISO ab. |
| Panel an Ceph RGW | Admin Ops | 443 | |
| Panel an SMTP | SMTP | 587 oder 465 | |
| Panel an KI-Anbieter | HTTPS | 443 | Nur wenn das KI-Modul aktiv ist. |
| Zahlungsanbieter an Panel | Webhook | 443 | Stripe und PayPal rufen zurück. |
| Knoten an Panel | `cmp-agent` | 443 | Registrierung, Heartbeat, Upgrade. |
| Panel an IPv6-Proxy-Knoten | SSH | der eingegebene Port | Nur einmalige Installation. |

## Warum das wichtig ist {#why-it-matters}

- **Ein Panel, das erreichbar ist, kann angegriffen werden.** Halten Sie Port 3000 nach Abschluss des Setup-Assistenten geschlossen. Der Installer tut dies bereits, wenn TLS aktiv ist.
- **Der Worker muss laufen**, damit etwas erstellt oder abgerechnet werden kann. `sudo nexcmp status` zeigt sowohl die Dienste als auch den Gesundheitsstatus.
- **Planen Sie Outbound-Firewalls.** Wenn der ausgehende Datenverkehr des Panel-Servers gefiltert wird, erlauben Sie die Ziele in der obigen Tabelle.
- **Verwaltungsdatenverkehr bleibt außerhalb des öffentlichen Pfads.** Verbindungen zu CloudStack, Proxmox VE, iDRAC und Ceph gehen direkt vom Panel-Server zu diesen Systemen, niemals über nginx oder Cloudflare.
