Record upload IP and add dated administrative key reports

This commit is contained in:
Sucukdeluxe
2026-09-22 04:57:09 +02:00
parent 76bd13a03d
commit aeff3193e6
8 changed files with 103 additions and 8 deletions
+5
View File
@@ -8,6 +8,11 @@ Diese Datei hält den verifizierten technischen Arbeitsstand fest. Sie enthält
## Zuletzt verifizierter Stand
- 22. September 2026, nach v2.0.91: Upload-IP als administrative Metadaten für neue Downloader-Online-Sicherungen implementiert; noch nicht produktiv aktiviert. Arbeitsbranch `fix/backup-source-ip`. `sourceIp` wird ausschließlich aus der serverseitig erkannten Request-Adresse ermittelt, nicht aus Nutzdaten. Produktiv ist der Dienst nur über Loopback erreichbar; Nginx überschreibt `X-Forwarded-For` mit `$remote_addr` (read-only geprüft). Bei Proxy/VPN ist dies ggf. deren Ausgangs-IP. Keine rückwirkende Zuordnung bei bestehenden Sicherungen, keine Ausgabe der IP über die öffentliche Restore-API.
- `recovery-admin.mjs list` liefert zusätzlich `sourceIp` (Legacy: null). `recover ... --with-metadata` schreibt `TT.MM.JJJJ - HH:mm | IP: … | Schlüssel: MDD2-…` ausschließlich in eine neue geschützte Datei; Zeit der Sicherung in `Europe/Berlin`, Sommer-/Winterzeit berücksichtigt. Ohne Option bleibt die bisherige reine Schlüsseldatei unverändert. Alte Sicherungen zeigen `IP: unbekannt`; ungültige Metadaten werden nicht als IP ausgegeben. Kein neues Windows-Update nötig, keine Änderung an Download/Entpacken oder Uploader.
- Verifiziert: TypeScript, elf Client-/Service-Integrationstests und alle 22 Server-Tests erfolgreich, inklusive IPv4/IPv6, fehlender/ungültiger IP, ignoriertem Forwarding-Header ohne Proxy-Vertrauen, unveränderlichen Metadaten bei doppeltem Upload, öffentlicher API-Abgrenzung, Datum/Sommer-/Winterzeit, Admin-Rohformat und formatierter Ausgabe ohne Schlüssel in Logs.
- Live-Bestand vor Aktivierung: 14 Sicherungen samt bisherigem Dienst, Env, Systemd-Unit und Drop-in gesichert nach `/root/mdd-recovery-preflight-R9Egj0/rollback.tar.gz`, SHA-256 `f43b1a74d35a179e4557a98425c2c7d31dd1c70ba72218636aa68a3064cbb5ff`. Archiv probeweise wiederhergestellt und Datensätze/Konfiguration verifiziert. Kandidat unter `/root/mdd-recovery-preflight-R9Egj0/candidate`; Staging `/tmp/mdd-recovery-stage-MFCvVd`, alle 22 Server-Tests unter Node 20 und HTTP-/Admin-Roundtrip mit IP-Bericht erfolgreich; 14 Live-Datensätze unverändert. Konkrete Freigabe zur Umstellung ausschließlich von `mdd-backup-api.service` auf den IP-Metadatenstand ist angefragt; noch kein Neustart dafür erfolgt.
- Abgeschlossen am 22. September 2026: `v2.0.91` auf GitHub und Forgejo veröffentlicht, Tag auf beiden Remotes exakt `0aa8c7ac4024f5739ef7e6c2c350ad0a934bd296`. Titel und neuester stabiler Release identisch; GitHub-Changelog Englisch, Forgejo-Changelog Deutsch. Alle zwölf öffentlichen Assets vollständig erneut heruntergeladen und Größen/SHA-256 mit den lokalen Originalen verglichen. Beide `latest.yml` bestätigen Version 2.0.91 und Installer-SHA-512. Setup-SHA-256 `0cabc0206300a3060f7d5028a6e8020772673d31267bfb55e552998bc9245369`, Portable-SHA-256 `1b57b016ec01c62e55d76bca802b5b5b2b2610fb87e478e9d1e66f369eecf00d`. Lokale Originale unter `release/staging-v2.0.91`; Source-ZIP mit 7-Zip geprüft und Git-Kommentar entspricht dem Tag-Commit.
- Abschließende Live-Prüfung: ausschließlich Downloader umgestellt, Dienst aktiv und öffentliche Recovery-Konfiguration erreichbar; ursprüngliche zwölf Datensätze bytegenau unverändert. Während der Arbeit kam unabhängig ein weiterer Datensatz ohne Recovery-Kopie hinzu und wurde unverändert belassen (13 insgesamt bei Abschluss). Schlüsselwiederherstellung benötigt einen neuen Export mit Client ab 2.0.91; alte Exporte bleiben nicht nachträglich wiederherstellbar. Windows-Anwendung auf Saschas Rechner nicht installiert oder neu gestartet. Desktop-Anleitung mit konkreten SSH-Befehlen, Zwischenablagehinweisen und verschlüsseltem Off-Server-Backup aktualisiert.