Installation Basissystem
- VM für PLESK vorbereiten
- Debian installieren
- Debian einrichten und Plesk installieren
- PLESK · Node.js-Einstellungen
VM für PLESK vorbereiten
VM für PLESK vorbereiten
Hinweis (Stand 2026-05-23): Diese Seite beschreibt die ursprüngliche Aufsetzung der DESS-Hosting-VM aus 2021. Die Produktivinstanz
vm-plesk-live.bab.network(192.168.101.121) läuft weiterhin auf Plesk, das Basis-OS-Setup ist historisch. Für Neuinstallationen gelten die jeweils aktuellen Plesk-Software-Requirements (siehe Hinweis am Ende).
Empfehlung VM-Sizing
Die notwendige Leistung richtet sich stark nach der Anzahl der gleichzeitigen Benutzer:innen im System. DESS selbst ist wenig anspruchsvoll, der Plesk-Stack braucht etwas mehr Reserven.
| Ressource | Empfehlung | Hinweis |
|---|---|---|
| vCPU | 4 Kerne | bei >300 aktiven Benutzer:innen 6–8 Kerne |
| RAM | 4 GB | bei >300 aktiven Benutzer:innen 8 GB |
| Festplatte | 100 GB | Wachstum über Reports + Logs einkalkulieren |
BAB-Setup (Produktion)
vm-plesk-live.bab.network (192.168.101.121) hostet dess.agrarforschung.at mit Plesk + Node.js + MariaDB. Plesk-Vhost-Pfad:
/var/www/vhosts/agrarforschung.at/dess.agrarforschung.at
Deployment erfolgt CI-gesteuert per SCP aus dess/dess-Repo → touch tmp/restart.txt startet Node.js neu (siehe .gitlab-ci.yml).
Aktuelle Plesk-Anforderungen
- Plesk Obsidian: https://docs.plesk.com/release-notes/obsidian/software-requirements/
- Für Neuinstallationen ist Debian 12 (Bookworm) oder Ubuntu 22.04 LTS zu wählen; Debian 10 (Buster) ist seit 2024-06-30 EOL und sollte für Neuinstallationen nicht mehr verwendet werden.
Stand: 2026-05-23 · Audit: Roland Neissl · Quelle: GitLab dess/dess Commit-Historie + Vault wiki/concepts/integration-dess-openproject.md + Vault wiki/incidents/2026/2026-05-21-dess-sso-broken-after-kc26.md
Debian installieren
Debian installieren
Achtung (Stand 2026-05-23): Diese Anleitung wurde 2021 für Debian 10 (Buster) verfasst. Debian 10 ist seit 2024-06-30 EOL (End of Life) und erhält keine Sicherheitsupdates mehr. Für Neuinstallationen ist Debian 12 (Bookworm) zu wählen.
Die DESS-Produktivinstanz auf
vm-plesk-live.bab.networkläuft Stand 2026-05 noch unter dem ursprünglichen Plesk-Setup; ein Host-OS-Upgrade ist als Backlog-Punkt erfasst.
Wahl des Basis-OS
| OS | Empfehlung | Anmerkung |
|---|---|---|
| Debian 12 (Bookworm) | empfohlen für Neuinstallationen | Plesk Obsidian unterstützt |
| Ubuntu 22.04 LTS | gleichwertig | Plesk-getestet |
| Debian 10 (Buster) | abgelaufen (EOL 2024-06-30) | nur für Bestandsanalyse, keine Neuinstallation |
| CentOS / RHEL | möglich | an der BAB nicht eingesetzt |
| Windows | nicht empfohlen | wesentlich ressourcenhungriger, an der BAB keine Erfahrung |
Aktuelle Plesk-Software-Requirements: https://docs.plesk.com/release-notes/obsidian/software-requirements/
Installationsmedium
Debian NetInstall AMD64 ISO: https://www.debian.org/CD/netinst/
Installations-Schritte (Standard)
- ISO booten, Sprache + Locale wählen.
- Hostname + Domain konfigurieren (z.B.
vm-plesk-live/bab.network). - Root-Passwort setzen, Standard-User anlegen.
- Partitionierung: Standard mit LVM (separates
/var-Volume optional). - Paketauswahl: nur SSH-Server + Standard-System-Werkzeuge (Plesk übernimmt den Rest).
- GRUB in den MBR installieren.
Nach der Installation
apt update && apt -y upgrade
apt -y install sudo curl gnupg
Dann weiter mit der Plesk-Installation (siehe Folgeseite).
Stand: 2026-05-23 · Audit: Roland Neissl · Quelle: GitLab dess/dess Commit-Historie + Vault wiki/concepts/integration-dess-openproject.md + Vault wiki/incidents/2026/2026-05-21-dess-sso-broken-after-kc26.md
Debian einrichten und Plesk installieren
Debian einrichten und Plesk installieren
Hinweis (Stand 2026-05-23): Verfasst 2021 für Debian 10 + Plesk Obsidian. Die Schritte gelten sinngemäß für Debian 12 + aktuelles Plesk.
Basis-Konfiguration
apt update && apt -y upgrade
Netzwerk: statische IP konfigurieren
Für Serverbetrieb statt DHCP eine statische IP setzen:
nano /etc/network/interfaces
Beispiel (Debian-klassisch):
auto eth0
iface eth0 inet static
address 192.168.101.121
netmask 255.255.255.0
gateway 192.168.101.1
dns-nameservers 192.168.64.10 192.168.64.11
Speichern mit Strg+X, dann Y zur Bestätigung. Anschließend Netzwerk-Stack neu starten:
systemctl restart networking
Bei Debian 12 (Bookworm) kommt systemd-networkd oder NetworkManager infrage — siehe https://wiki.debian.org/NetworkConfiguration.
Plesk installieren
Aktuelle Anleitung (Console Installer): https://docs.plesk.com/en-US/obsidian/deployment-guide/plesk-installation-and-upgrade-on-single-server/installing-plesk-using-installer-console/installing-plesk-for-linux-using-installer-console.76445/
Kurzform:
sh <(curl https://autoinstall.plesk.com/one-click-installer)
Nach der Installation https://<server-ip>:8443/ aufrufen, mit Root-Passwort einloggen und den Setup-Wizard durchlaufen.
Komponenten (für DESS)
Im Plesk-Installer mindestens folgende Komponenten aktivieren:
- nginx + Apache
- PHP (für Plesk-UI)
- MariaDB (für DESS)
- Node.js Toolkit (für DESS-Backend)
- Let's-Encrypt-Extension
- Optional: phpMyAdmin
Domain anlegen
Im Plesk-UI:
- Subscription / Domain anlegen →
dess.agrarforschung.atunter Customeragrarforschung. - Vhost-Pfad:
/var/www/vhosts/agrarforschung.at/dess.agrarforschung.at. - Node.js aktivieren (siehe Folgeseite).
- SSL-Zertifikat via Let's-Encrypt oder Wildcard
*.agrarforschung.at(Hetzner-DNS-01) zuweisen.
Stand: 2026-05-23 · Audit: Roland Neissl · Quelle: GitLab dess/dess Commit-Historie + Vault wiki/concepts/integration-dess-openproject.md + Vault wiki/incidents/2026/2026-05-21-dess-sso-broken-after-kc26.md
PLESK · Node.js-Einstellungen
PLESK · Node.js-Einstellungen
Hinweis (Stand 2026-05-23): Aktuelle Produktion läuft mit Node.js 18.x LTS (siehe
.gitlab-ci.yml). Plesk-Node.js-Toolkit muss installiert sein.
Application-Settings im Plesk-UI
Im Plesk-Vhost unter Node.js folgende Felder setzen:
| Feld | Wert |
|---|---|
| Node.js Version | 18.x (LTS) |
| Document Root | /var/www/vhosts/agrarforschung.at/dess.agrarforschung.at |
| Application Root | /var/www/vhosts/agrarforschung.at/dess.agrarforschung.at |
| Application Startup File | index.js |
| Application Mode | production |
Custom Environment Variables
DESS liest seine Konfiguration über config/config.js aus, dort werden bestimmte Felder über process.env überschreibbar gehalten. Im Plesk-UI unter Node.js → Custom environment variables mindestens setzen:
| Variable | Beispiel | Zweck |
|---|---|---|
NODE_ENV |
production |
Aktiviert Production-Logging + Caching |
PORT |
3000 |
interner Node-Port (Plesk-nginx-Proxy davor) |
DB_HOST |
127.0.0.1 |
MariaDB-Host |
DB_USER |
dess |
DB-User |
DB_PASSWORD |
<secret> |
aus OpenBao, niemals im Vault im Klartext |
DB_NAME |
dess |
DB-Name |
OIDC_ENABLED |
true |
Aktiviert Keycloak-Login (seit 1.0.9) |
OIDC_ISSUER |
https://sso.agrarforschung.at/realms/bab |
Keycloak-Realm |
OIDC_CLIENT_ID |
dess |
KC-Client |
OIDC_CLIENT_SECRET |
<secret> |
aus OpenBao |
PROXY |
true |
hinter nginx-Reverse-Proxy |
SESSION_SECRET |
<random> |
Express-Session-Secret, nicht hardcoden |
Restart-Mechanismus
Plesk Passenger erkennt Neustart-Triggerdatei:
touch /var/www/vhosts/agrarforschung.at/dess.agrarforschung.at/tmp/restart.txt
Die CI-Pipeline .gitlab-ci.yml setzt dieses File automatisch nach jedem erfolgreichen SCP-Upload.
Bekannte Hardening-Punkte
trust proxyFlag: Express mussapp.set('trust proxy', 1)setzen, damitreq.protocolhinter dem nginx-Reverse-Proxy korrekthttpsliefert. Siehe Incident DESS SSO-Login defekt nach Keycloak 26 Upgrade bzw. Vaultwiki/incidents/2026/2026-05-21-dess-sso-broken-after-kc26.md.- OIDC
iss-Parameter: KC26 sendetissin der Auth-Response. Aktuell ist das auf KC-Seite per Client-Attributexclude.issuer.from.auth.response=truedeaktiviert; ein Hardening-Fix inlogin.component.ts+ Joi-Schema ist offen.
Stand: 2026-05-23 · Audit: Roland Neissl · Quelle: GitLab dess/dess Commit-Historie + Vault wiki/concepts/integration-dess-openproject.md + Vault wiki/incidents/2026/2026-05-21-dess-sso-broken-after-kc26.md