Push-mirror SSH host keys: persist accept-new trust + surface host-key status #625

Closed
opened 2026-09-16 15:47:34 +00:00 by crueber · 1 comment
Owner

Follow-up recommended by the #623 review (PR #624): SSH accept-new trust lands on ephemeral disk with no verification surface. Document the choice (done in 13_push_mirror.md), then: persist accepted host keys server-side (bucket sidecar, alongside the mirror config) and surface host-key status (fingerprint, first-accepted-at) in the push-mirror Settings section, so operators can verify/pin instead of trusting every sync. Prod guidance until then: pin known_hosts.

Follow-up recommended by the #623 review (PR #624): SSH accept-new trust lands on ephemeral disk with no verification surface. Document the choice (done in 13_push_mirror.md), then: persist accepted host keys server-side (bucket sidecar, alongside the mirror config) and surface host-key status (fingerprint, first-accepted-at) in the push-mirror Settings section, so operators can verify/pin instead of trusting every sync. Prod guidance until then: pin known_hosts.
crueber added this to the v1 milestone 2026-09-16 15:47:34 +00:00
Author
Owner

Fixed by #626 (merged): accept-new trust harvested into the bucket secret sidecar (merge, operator pins win, steady-state skips writes, first-accepted-at stamped once) with fingerprint/accepted-at surfaced in the view + Settings (ETag-covered). Review fixed pre-merge: HashKnownHosts=no (salted hashes would defeat dedupe), harvest CAS re-merge loop (concurrent operator PUT no longer clobbered), stamp reset on clear. Verified: pushmirror 95.5%/api 95.4% cover, -race green, stub-git e2e + 1612 web unit green, independent review APPROVE.

Fixed by #626 (merged): accept-new trust harvested into the bucket secret sidecar (merge, operator pins win, steady-state skips writes, first-accepted-at stamped once) with fingerprint/accepted-at surfaced in the view + Settings (ETag-covered). Review fixed pre-merge: HashKnownHosts=no (salted hashes would defeat dedupe), harvest CAS re-merge loop (concurrent operator PUT no longer clobbered), stamp reset on clear. Verified: pushmirror 95.5%/api 95.4% cover, -race green, stub-git e2e + 1612 web unit green, independent review APPROVE.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
crueber/walhub#625
No description provided.