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:
/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 Variable: 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:
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 proxy Flag: Express muss app.set('trust proxy', 1) setzen, damit req.protocol hinter dem nginx-Reverse-Proxy korrekt https liefert. Siehe Incident DESS SSO-Login defekt nach Keycloak 26 Upgrade bzw. Vault wiki/incidents/2026/2026-05-21-dess-sso-broken-after-kc26.md.
OIDC iss-Parameter: KC26 sendet iss in der Auth-Response. Aktuell ist das auf KC-Seite per Client-Attribut exclude.issuer.from.auth.response=true deaktiviert; ein Hardening-Fix in login.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
