secubox-deb/packages/secubox-waf-ng/debian
CyberMind-FR bd8e2e382e
Some checks failed
License Headers / check (push) Has been cancelled
feat(waf-ng): reconcile to a single HARDENED non-root unit; retire worker@ fan-out (ref #896)
The board ran a hand-created unhardened ROOT sbxwaf on :8085 while the package
shipped only a worker@ fan-out that crash-looped (panic on the root-only
cookie-audit log) and, as secubox-waf + RuntimeDirectory=secubox, re-chowned the
shared /run/secubox on every crash-restart — breaking every secubox-user socket
bind (profiles 502s). Ship ONE hardened unit (secubox-waf-ng.service, :8085,
User=secubox-waf, full sandbox, NO RuntimeDirectory — sbxwaf only connects to
waker.sock). postinst asserts the perms a non-root sbxwaf needs
(haproxy-routes.json 0644, cookie-audit ledger writable by secubox-waf),
disables leftover worker@ units, drops the /etc override. Validated live on gk2:
264 routes, real routing, admin/gitea/billets/yacy 200; a WAF restart no longer
touches /run/secubox and profiles stays up.

Co-Authored-By: Gerald KERMA <devel@cybermind.fr>
2026-07-21 07:28:46 +02:00
..
source feat(packaging): secubox-waf-ng deb + hardened systemd worker + AppArmor (ref #744) 2026-06-26 14:25:01 +02:00
changelog feat(waf-ng): reconcile to a single HARDENED non-root unit; retire worker@ fan-out (ref #896) 2026-07-21 07:28:46 +02:00
control feat(packaging): secubox-waf-ng deb + hardened systemd worker + AppArmor (ref #744) 2026-06-26 14:25:01 +02:00
postinst feat(waf-ng): reconcile to a single HARDENED non-root unit; retire worker@ fan-out (ref #896) 2026-07-21 07:28:46 +02:00
prerm feat(packaging): secubox-waf-ng deb + hardened systemd worker + AppArmor (ref #744) 2026-06-26 14:25:01 +02:00
rules feat(waf-ng): reconcile to a single HARDENED non-root unit; retire worker@ fan-out (ref #896) 2026-07-21 07:28:46 +02:00
secubox-waf-ng.apparmor feat(waf-ng): sbxwaf routes on-demand vhosts to the waker instead of 421 (ref #896) 2026-07-20 13:20:11 +02:00