docs/release-notes/0.11.1.md
Rama main · réplica de lectura del repositorio original.
# Nodvard Deck 0.11.1 – Sicherheitsupdate: engere Rechte beim Einrichten und Schutz vor veränderten Sicherungen
*English version: [below](#english).*
## Deutsch
Ein Update mit Sicherheits- und Fehlerkorrekturen, ohne neue Funktionen. Wir empfehlen es allen, die 0.11.0 oder älter
nutzen.
### Sicherheit
**Einrichten von Servern**
- Braucht auf einem Server kein eingeschaltetes Modul root, richtet der Haken „Root-Rechte ohne Passwort“ kein sudo
mehr ein. Bisher gab es dann die volle sudo-Regel für alles. Wer sudo trotzdem will, wählt unter „Erweitert“ „Volle
Rechte“. Eine früher eingerichtete Regel bleibt auf dem Server, wie du sie löschst, steht in der Anleitung zum
Einrichten.
- Die Hilfsskripte legt Deck nur noch in Ordner, in die außer root und der Gruppe root niemand schreiben darf, auch
nicht über erweiterte Zugriffsrechte.
- Stand der Schlüssel von Deck schon ohne Einschränkungen auf dem Server, etwa von Hand eingetragen, ergänzt die
Einrichtung jetzt die Einschränkungen (zum Beispiel kein Weiterleiten von Ports) und sagt dir das. Hast du selbst
Optionen eingetragen, bleibt die Zeile, wie sie ist.
**Daten aus einer Sicherung**
- Dokumente, Inventarbilder, die Ausgabe von Job-Läufen und die Quarantäne von Nodvard Shield prüfen jetzt, ob eine
Datei wirklich dort liegt, wo Deck sie selbst ablegt. Eine veränderte Sicherung kann so keine Dateien außerhalb
lesen, verschieben oder löschen lassen. Die Vorschau von Dokumenten zeigt nur noch PDF und Bilder, alles andere gibt
es zum Herunterladen.
**Weitere Punkte**
- Die Seiten von Deck führen nur noch Skripte aus, die vom eigenen Server kommen. Bisher hat der Browser fremde Skripte
nur gemeldet, jetzt blockiert er sie.
- Ein ausgeschalteter Job lässt sich auch über die Schnittstelle nicht mehr von Hand starten. Das betrifft vor allem
die automatischen Updates von Nodvard Shield: Sind sie ausgeschaltet, spielt Deck nichts ein.
- Docker: Eine Freigabe zum Anmelden bei einer Registry gilt nur für den Benutzernamen, der beim Vorschlag eingetragen
war. Beim Zurückspielen einer Volume-Sicherung prüft Deck, dass das Archiv noch dasselbe ist wie bei der Prüfung
kurz davor.
### Behoben
- „Verbindung prüfen“ warnt nicht mehr vor fehlendem sudo, wenn auf dem Server kein Modul root braucht.
- Ist ein Vorschlag schon abgelaufen, wenn jemand auf „Bestätigen“ klickt, steht der Ablauf jetzt auch im Protokoll.
- Docker:
- Bricht das Zurückspielen genau beim Austausch der Daten ab, bleibt der Stack gestoppt, statt mit halb getauschten
Daten wieder zu starten. Ein Sicherungsordner mit einem unmöglichen Datum legt nicht mehr die ganze Liste lahm.
- Der Umzug von Portainer prüft direkt vor dem Neu-Ausrollen noch einmal, ob die Container zu den Images passen, und
meldet zurückgebliebene Container statt eines Erfolgs.
- Die Registry-Liste zeigt „unbekannt“ statt fälschlich „angemeldet“, wenn ein Server seine Anmeldungen über ein
eigenes Hilfsprogramm speichert.
- Unerwartete Angaben zu einem Container nennt Deck als Grund statt eines allgemeinen Serverfehlers. Der Ordner eines
Compose-Projekts erscheint im Dateimanager nicht mehr leer oder abgeschnitten.
### Gut zu wissen
- **Keine Umstellung der Datenbank.** Der Wechsel zurück auf 0.11.0 geht ohne Datenverlust.
- **Ältere Debian:** Darf dort die Gruppe „staff“ in `/usr/local` schreiben, bricht eine neue Einrichtung mit nur den
Hilfsskripten ab, und „Verbindung prüfen“ warnt bei schon eingerichteten Servern. Abhilfe auf dem Server als root:
`chmod g-w /usr/local /usr/local/lib`, danach den Einrichtungsbefehl noch einmal ausführen.
- Aktualisieren: in Deck unter Einstellungen → „Updates“ → „Jetzt aktualisieren“, oder mit
`docker compose pull && docker compose up -d`.
## English
A security and bug fix release without new features. We recommend it for everyone on 0.11.0 or older.
### Security
- **Server setup:** if no enabled module needs root on a server, the “Root without password” option no longer sets up
sudo at all (previously it granted full sudo). Choose full rights under “Advanced” if you need sudo. An existing rule
stays on the server; the setup guide explains how to remove it. Helper scripts are only placed in folders that
nobody but root and the root group can write to, including extended ACLs. A Deck key that was already present without
restrictions now gets them added during setup; lines with your own options stay as they are.
- **Data from a backup:** documents, inventory images, job run output and the Nodvard Shield quarantine now check that
a file really is where Deck stores it, so a modified backup cannot make Deck read, move or delete files elsewhere.
The document preview only shows PDFs and images.
- Deck's pages only run scripts served by Deck itself; the browser now blocks others instead of only reporting them.
- A disabled job can no longer be started by hand through the API, which matters most for Nodvard Shield's automatic
updates.
- Docker: a registry login approval only applies to the user name it was proposed with, and restoring a volume backup
checks that the archive is still the one that was verified.
### Fixed
- “Check connection” no longer warns about missing sudo when no module needs root.
- Approving an already expired proposal now records the expiry in the audit log.
- Docker: an interrupted restore leaves the stack stopped instead of starting it with half-swapped data; an impossible
date in a backup folder name no longer breaks the list; the Portainer migration re-checks images right before
redeploying; credential helpers show as “unknown”; clearer errors for unexpected container data and correct folders
for compose projects in the file manager.
### Good to know
- No database migration; going back to 0.11.0 works without data loss.
- Older Debian: if the group “staff” can write to `/usr/local`, a new helper-only setup stops and “Check connection”
warns. Fix as root on the server: `chmod g-w /usr/local /usr/local/lib`, then run the setup command again.
- Update in Deck under Settings → “Updates” → “Update now”, or with `docker compose pull && docker compose up -d`.