D43 = A (R-1257): the root-key-only sshd drop-in only on an appliance; on BYO nothing is written and our copy is removed; the in-force check reads the LAN addresses (X3); a failing sshd -t undoes only the SSH step (X4). Commit only, not released.
gates / gates (push) Successful in 1m32s
gates / gates (push) Successful in 1m32s
This commit is contained in:
1 parent
f5c3d77a61
commit
c8d3c17b13
3 files changed
+235
-17
No files matched your search
@@ -1,3 +1,22 @@
|
||||
## Unreleased (next: v0.165.0) — D43 = A: BYO hosts keep their own SSH settings (R-1257) (2026-10-24 night) — committed, NOT released (the release + the operator's vouch are Monday's)
|
||||
|
||||
- **The root-key-only sshd drop-in (`/etc/ssh/sshd_config.d/10-felhom-root-key-only.conf`, R-982 / D4) goes only to an
|
||||
appliance** — operator ruling D43 = A (2026-10-24): a BYO host belongs to its owner (`11` §1). The table entry's policy
|
||||
is now `appliance`: written only when the ROOT-OWNED install record (`/var/lib/felhom-install/state.json`) says
|
||||
`appliance`. On a `byo` record nothing is written, and a copy WE wrote (this exact path, beginning with our header
|
||||
line) is REMOVED, its previous copy kept for the undo, then `sshd -t` and a reload. A box whose record is absent or
|
||||
agent-writable proves nothing and is left exactly as it is. The bundle report lists `removed`; the record says
|
||||
`removed` / `skipped`. The installer records the mode before it installs the bundle, so a new appliance still gets it.
|
||||
- **X3: the „in force" check asks sshd about each of the host's own LAN addresses** (`ip -4 -o addr show scope
|
||||
global`), not only 192.0.2.1 — a `Match Address <LAN>` block that re-allows root passwords no longer reads as in force.
|
||||
- **X4: a failing `sshd -t` puts back ONLY the SSH step** (`undo_sshd_step`: the previous copy, or none; sshd is not
|
||||
reloaded, so it never ran the refused state) and the rest of the bundle stays; it used to refuse and undo the whole
|
||||
bundle. The report carries `sshd_step_undone`; the record names what is on disk.
|
||||
- Tests (`configs/test_felhom_config_bundle.py`, class `ByoKeepsItsSSH`, 7 tests; each rule seen failing with it taken
|
||||
out): a BYO host gets no drop-in; our copy comes off a BYO host; the owner's own file stays; no record → left as it
|
||||
is; a LAN `Match` block is not in force; every address key-only passes; a failing `sshd -t` undoes only the SSH step.
|
||||
The fake box now carries an appliance record by default (every earlier test unchanged).
|
||||
|
||||
## 2026-10-24 (review round 2, unattended) — `.claude/rules/unprompted-work.md` aligned with its four siblings
|
||||
|
||||
- The copy lacked item 6's paragraph „A version number is pushed once …" that the felhom.eu and felhom-controller copies
|
||||
|
||||
Reference in new issue
Block a user