chore(release): 0.1.0 - Phase 1 abgeschlossen

Grundgeruest, Anmeldung, Hosts mit Host-Key-Pruefung und Bootstrap.
README mit Installation und Ablauf fuer neue Hosts, CHANGELOG und
DEVLOG nachgetragen. Offen im Meilenstein bleibt nur #030 (Gitea),
das auf die Zugangsdaten wartet.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-12 10:02:44 +02:00
co-authored by Claude Opus 5.5
parent d44185bcbd
commit db0d095032
4 changed files with 124 additions and 9 deletions
+30 -2
View File
@@ -8,5 +8,33 @@ und dieses Projekt folgt [Semantic Versioning](https://semver.org/lang/de/).
## [Unveröffentlicht]
### Hinzugefügt
- Projektplan mit Architektur, Datenmodell, Sicherheitskonzept und Phasenplan (`docs/PLAN.md`)
- Issues für alle fünf Phasen in `docs/issues/`
### Geändert
### Behoben
### Sicherheit
## [0.1.0] – 2026-10-12
Phase 1: Grundgerüst, Anmeldung, Hosts und Bootstrap.
### Hinzugefügt
- Projektplan mit Architektur, Datenmodell, Sicherheitskonzept und Phasenplan (`docs/PLAN.md`), Issues für alle fünf Phasen
- Projektgerüst: Next.js 16, Prisma 7, PostgreSQL 17, pnpm, ESLint/Prettier/Vitest/Playwright, commitlint (#001)
- Design „Tresor“: Design-Tokens, selbst gehostete Schriften, Logo, Favicon und PWA-Icons, Seitenleiste, Grundkomponenten (#002)
- Datenmodell für alle Phasen mit Datenbankregeln (CHECK, partielle Indizes, Trigger) und Seed mit Notfall-Admin und eingebauten Vorlagen „Deployment-Zugang“, „Backup-Zugang“, „Admin-Zugang Person“ (#003)
- Anmeldung per OIDC (authentik) mit Rollen Admin/Operator/Leser aus Gruppen; Notfall-Admin mit Passwort und Pflicht-TOTP; erneute Bestätigung vor kritischen Aktionen (#004)
- Revisionssicheres Protokoll: append-only, Hash-Kette, Prüffunktion (#005)
- OpenSSH-Schlüssel (ed25519, RSA-4096) erzeugen, lesen und schreiben ohne `ssh-keygen`, kompatibel geprüft; Envelope Encryption mit Master-Key; Deployment-Key der Instanz (#006)
- Worker mit pg-boss und Vorgängen mit Fortschrittsanzeige; Dockerfile und Docker Compose für den Betrieb (#007)
- Hosts und Hostgruppen anlegen, bearbeiten, archivieren, filtern; Demo-Daten mit `SSHKV_SEED_DEMO=1` (#008)
- Host-Key-Prüfung nach TOFU: abrufen, Fingerprint bestätigen oder ablehnen, strikte Prüfung bei jeder Verbindung, Warnung bei Änderung (#009)
- Bootstrap neuer Hosts per Einmal-Passwort oder Befehl zum Kopieren, mit Dienstbenutzer `sshkv` und sudoers; sshd-Hinweise (#010)
- SSH-Testziele (Debian 13) und Mock-OIDC für Integrations- und E2E-Tests (#011)
### Sicherheit
- Private Keys nur verschlüsselt in der Datenbank; nur der Worker kann sie öffnen – strukturell getestet
- Ein `pg_dump` enthält keinen Klartext-Schlüssel (Test)
- Bootstrap-Passwort wird nirgends gespeichert (Test); Dateien im Home des Zielbenutzers werden als dieser Benutzer geschrieben (Symlink-Test gegen `/etc/shadow`)
- Content-Security-Policy mit Nonce, Sicherheits-Kopfzeilen, Rate-Limit für den Notfallzugang