Apply Railiance01 firewall-only converge and close RAIL-HO-WP-0009
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:
parent
4d9e77c968
commit
d0e8f9f24e
4 changed files with 18 additions and 15 deletions
2
Makefile
2
Makefile
|
|
@ -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
|
||||
@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
|
||||
cd $(ANS_DIR) && ansible-playbook $(PLAY) $(ANSIBLE_USER_FLAG) --check
|
||||
|
|
|
|||
5
SCOPE.md
5
SCOPE.md
|
|
@ -86,9 +86,8 @@ higher layer (Kubernetes, platform, etc.) can run.
|
|||
higher-layer and future reef planning. `railiance-hosts` is **superseded** by
|
||||
this repo and carries a banner saying so; its retirement is pending in
|
||||
`railiance-master`
|
||||
- **Open security work**: `RAIL-HO-WP-0009` — k3s API is declared tunnel-only
|
||||
(ADR-005). Live `Railiance01` still has three public 6443 grants until an
|
||||
operator-approved `make converge-firewall HOST=Railiance01`. CoulombCore
|
||||
- **Firewall posture**: `RAIL-HO-WP-0009` finished. k3s API is tunnel-only
|
||||
(ADR-005); live `Railiance01` UFW matches the declaration. CoulombCore
|
||||
UFW stays unmanaged (`ufw_manage: false`)
|
||||
|
||||
---
|
||||
|
|
|
|||
9
ansible/playbooks/firewall.yaml
Normal file
9
ansible/playbooks/firewall.yaml
Normal 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
|
||||
|
|
@ -4,7 +4,7 @@ type: workplan
|
|||
title: "Firewall declared-state integrity and k3s API exposure"
|
||||
domain: financials
|
||||
repo: railiance-infra
|
||||
status: active
|
||||
status: finished
|
||||
owner: codex
|
||||
topic_slug: railiance
|
||||
created: "2026-08-12"
|
||||
|
|
@ -98,7 +98,7 @@ session (`89.244.90.236` granted; `kubectl` verified, node Ready v1.35.1+k3s1).
|
|||
|
||||
```task
|
||||
id: RAIL-HO-WP-0009-T02
|
||||
status: wait
|
||||
status: done
|
||||
priority: high
|
||||
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
|
||||
(`ufw_manage: false`).
|
||||
|
||||
Waiting on operator approval. Command:
|
||||
|
||||
```bash
|
||||
make converge-firewall HOST=Railiance01
|
||||
```
|
||||
**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`.
|
||||
|
||||
```task
|
||||
id: RAIL-HO-WP-0009-T03
|
||||
|
|
@ -307,7 +303,6 @@ rollout) is not this repo.
|
|||
|
||||
## Outcome
|
||||
|
||||
T01, T03, T04, T05, T06 done. T02 waits on operator approval to run
|
||||
`make converge-firewall HOST=Railiance01`, which will delete the three live
|
||||
6443 grants and make the host match ADR-005. CoulombCore UFW is intentionally
|
||||
not enabled.
|
||||
Finished 2026-08-15. Declaration and live Railiance01 UFW now match ADR-005:
|
||||
no public 6443 grants, no blanket VXLAN allow, Nydus 2224 declared. CoulombCore
|
||||
UFW remains unmanaged (`ufw_manage: false`).
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue