Auf der Hostseite: Host-Key abrufen, Fingerprint vergleichen und vertrauen oder ablehnen. Weicht ein Key vom vertrauten ab, erscheint eine deutliche Warnung, und Annehmen geht nur mit Haekchen und frischer Bestaetigung. Danach Bootstrap per Einmal-Passwort oder per Befehl und Verbindungspruefung, jeweils mit Fortschrittsanzeige. Der sshd-Befund empfiehlt prohibit-password, wenn root sich per Passwort anmelden darf - nur als Hinweis, geaendert wird nichts. E2E im gebauten Stand mit Worker gegen ein echtes sshd. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,23 +1,27 @@
|
||||
# #009 Host-Key-Prüfung (TOFU) und Erreichbarkeit
|
||||
**Status:** offen
|
||||
**Status:** erledigt
|
||||
**Meilenstein:** v0.1.0
|
||||
**Labels:** sicherheit
|
||||
**Geschätzt:** 3 h **Tatsächlich:** –
|
||||
**Geschätzt:** 3 h **Tatsächlich:** 0 h 25 min
|
||||
|
||||
## Ziel
|
||||
Beim ersten Kontakt wird der Host-Key angezeigt und bestätigt; danach strikte Prüfung, Änderung = Warnung.
|
||||
|
||||
## Aufgaben
|
||||
- [ ] Vorgang „Host-Key abrufen“ (ohne Anmeldung)
|
||||
- [ ] Bestätigen/Ablehnen mit Protokolleintrag
|
||||
- [ ] `hostVerifier` in ssh2 gegen gespeicherten Key
|
||||
- [ ] Geänderter Host-Key: Status GEAENDERT, keine Verbindung, deutliche Warnung
|
||||
- [ ] Erreichbarkeitsprüfung
|
||||
- [x] Vorgang „Host-Key abrufen“ (ohne Anmeldung)
|
||||
- [x] Bestätigen/Ablehnen mit Protokolleintrag
|
||||
- [x] `hostVerifier` in ssh2 gegen gespeicherten Key
|
||||
- [x] Geänderter Host-Key: Status GEAENDERT, keine Verbindung, deutliche Warnung
|
||||
- [x] Erreichbarkeitsprüfung
|
||||
|
||||
## Akzeptanzkriterien
|
||||
- [ ] Integrationstest: geänderter Host-Key wird abgelehnt
|
||||
- [x] Integrationstest: geänderter Host-Key wird abgelehnt
|
||||
|
||||
## Abhängigkeiten
|
||||
#006, #007
|
||||
|
||||
## Notizen / Entscheidungen
|
||||
- **Nur vertraute Algorithmen anbieten:** `serverHostKey` enthält nur die Verfahren der vertrauten Keys (für `ssh-rsa` die `rsa-sha2-*`). Sonst könnte ein Server einen Key eines anderen Typs zeigen, den nie jemand gesehen hat.
|
||||
- **Abrufen bricht im `hostVerifier` ab** – vor jedem Austausch von Zugangsdaten.
|
||||
- **Geänderter Key:** wird als AUSSTEHEND festgehalten, öffnet eine Abweichung `HOSTKEY_GEAENDERT` und setzt den Host auf Drift. Ersetzen nur mit ausdrücklichem Häkchen in der Oberfläche **und** frischer Bestätigung (Re-Auth).
|
||||
- Integrationstest gegen echtes sshd inkl. Host-Key-Tausch; E2E im Browser (abrufen → vertrauen).
|
||||
|
||||
Reference in New Issue
Block a user