Apply Railiance01 firewall-only converge and close RAIL-HO-WP-0009
Some checks are pending
CI Smoke / container-smoke (push) Waiting to run
CI Smoke / host-smoke (push) Successful in 0s

Operator-approved playbooks/firewall.yaml --tags firewall removed the
three public 6443 grants. Live UFW now matches ADR-005 (OpenSSH + Nydus).
This commit is contained in:
codex 2026-08-15 17:57:17 +02:00
parent 4d9e77c968
commit d0e8f9f24e
4 changed files with 18 additions and 15 deletions

View file

@ -292,7 +292,7 @@ converge-tags: ## Run only certain tags: make converge-tags TAGS="base,ufw"
converge-firewall: ## Apply only UFW tasks: make converge-firewall HOST=Railiance01 converge-firewall: ## Apply only UFW tasks: make converge-firewall HOST=Railiance01
@test -n "$(HOST)" || (echo "Usage: make converge-firewall HOST=Railiance01"; exit 1) @test -n "$(HOST)" || (echo "Usage: make converge-firewall HOST=Railiance01"; exit 1)
cd $(ANS_DIR) && ansible-playbook $(PLAY) $(ANSIBLE_USER_FLAG) -l $(HOST) --tags firewall cd $(ANS_DIR) && ansible-playbook playbooks/firewall.yaml $(ANSIBLE_USER_FLAG) -l $(HOST) --tags firewall
converge-check: ## Dry-run (no changes), great for previews converge-check: ## Dry-run (no changes), great for previews
cd $(ANS_DIR) && ansible-playbook $(PLAY) $(ANSIBLE_USER_FLAG) --check cd $(ANS_DIR) && ansible-playbook $(PLAY) $(ANSIBLE_USER_FLAG) --check

View file

@ -86,9 +86,8 @@ higher layer (Kubernetes, platform, etc.) can run.
higher-layer and future reef planning. `railiance-hosts` is **superseded** by higher-layer and future reef planning. `railiance-hosts` is **superseded** by
this repo and carries a banner saying so; its retirement is pending in this repo and carries a banner saying so; its retirement is pending in
`railiance-master` `railiance-master`
- **Open security work**: `RAIL-HO-WP-0009` — k3s API is declared tunnel-only - **Firewall posture**: `RAIL-HO-WP-0009` finished. k3s API is tunnel-only
(ADR-005). Live `Railiance01` still has three public 6443 grants until an (ADR-005); live `Railiance01` UFW matches the declaration. CoulombCore
operator-approved `make converge-firewall HOST=Railiance01`. CoulombCore
UFW stays unmanaged (`ufw_manage: false`) UFW stays unmanaged (`ufw_manage: false`)
--- ---

View file

@ -0,0 +1,9 @@
---
# Firewall-only converge. Does not load SOPS secrets or other bootstrap roles.
# Usage: make converge-firewall HOST=Railiance01
- hosts: all
become: true
vars_files:
- ../inventory/group_vars/all.yaml
roles:
- role: base

View file

@ -4,7 +4,7 @@ type: workplan
title: "Firewall declared-state integrity and k3s API exposure" title: "Firewall declared-state integrity and k3s API exposure"
domain: financials domain: financials
repo: railiance-infra repo: railiance-infra
status: active status: finished
owner: codex owner: codex
topic_slug: railiance topic_slug: railiance
created: "2026-08-12" created: "2026-08-12"
@ -98,7 +98,7 @@ session (`89.244.90.236` granted; `kubectl` verified, node Ready v1.35.1+k3s1).
```task ```task
id: RAIL-HO-WP-0009-T02 id: RAIL-HO-WP-0009-T02
status: wait status: done
priority: high priority: high
state_hub_task_id: "7d91dfc2-481b-4943-90e9-bb1b814a23dc" state_hub_task_id: "7d91dfc2-481b-4943-90e9-bb1b814a23dc"
``` ```
@ -148,11 +148,7 @@ operator-approved prune of those three grants. SSH stays; kubectl goes via
`k3s-api-railiance01` (`:16444`). CoulombCore is not touched `k3s-api-railiance01` (`:16444`). CoulombCore is not touched
(`ufw_manage: false`). (`ufw_manage: false`).
Waiting on operator approval. Command: **Done 2026-08-15.** Operator approved. `ansible-playbook playbooks/firewall.yaml -l Railiance01 --tags firewall` deleted the three live 6443 grants (`.248`, `.236`, `.255`). Live UFW is now OpenSSH + Nydus 2224 only. SSH verified. `sudo k3s kubectl get nodes` → Ready v1.35.1+k3s1. Public `:6443` times out. Tunnel `k3s-api-railiance01` still answers on `:16444`.
```bash
make converge-firewall HOST=Railiance01
```
```task ```task
id: RAIL-HO-WP-0009-T03 id: RAIL-HO-WP-0009-T03
@ -307,7 +303,6 @@ rollout) is not this repo.
## Outcome ## Outcome
T01, T03, T04, T05, T06 done. T02 waits on operator approval to run Finished 2026-08-15. Declaration and live Railiance01 UFW now match ADR-005:
`make converge-firewall HOST=Railiance01`, which will delete the three live no public 6443 grants, no blanket VXLAN allow, Nydus 2224 declared. CoulombCore
6443 grants and make the host match ADR-005. CoulombCore UFW is intentionally UFW remains unmanaged (`ufw_manage: false`).
not enabled.