Deployment readiness: deception metrics, real-service DNAT, hardening + systemd #98
No reviewers
Labels
No labels
bug
deploy
documentation
duplicate
enhancement
good first issue
help wanted
invalid
pull-request
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
femboy/blackwall!98
Loading…
Reference in a new issue
No description provided.
Delete branch "sp-deploy-readiness"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
A push to make Blackwall actually deployable end to end. Three related pieces:
1. Deception
/metrics+ live in-flight gaugeblackwalld runpreviously ignoredmetrics_listen— the deception engine exposed no metrics at all. Now it serves/metricswithblackwall_deception_sessions_active(a live in-flight count tracked by an RAII drop-guard inserve(), covering success/error/timeout/panic) plus the session/audit/detection DB totals.MetricsSources.collectoris now optional (deception has no sFlow collector).2. Real-service DNAT (
nat:targets)Declared real services with a fixed backend (
allow tcp 443 nat:10.0.0.9:8443) were onlyaccepted and never forwarded to the backend — real services behind anat:target silently didn't work. Added a separatenatprerouting chain (dstnat priority) with a per-servicednat to <ip>:<port>rule.host:/incus:keep the plain accept; cross-family targets are skipped. Verified renders + applies vianft -j.3. Deployment hardening + artifacts
apply()now tears the whole dataplane back down instead of leaving a table that diverts deception traffic to an unreachable socket.blackwalld apply/runfail fast if the config'sinterfacedoesn't exist (a wrongiifnameotherwise silently classifies no traffic).deploy/blackwalld-{deception,flow}.service) — correct caps, SIGTERM graceful stop,Restart=always.docs/deployment.md— install → dress-rehearse → staged enable → observe → stop/emergency → security → not-yet-implemented.Verification
fmt/clippy --workspace --all-targets --deny warningsclean;cargo test --workspace46 suites (incl. 2 new DNAT render tests); coverage 95.10%; nft snapshot updated.nft -j.🤖 Generated with Claude Code