Milestone 2.1: Engine hardening + protocol emulators #25
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!25
Loading…
Reference in a new issue
No description provided.
Delete branch "milestone-2.1-hardening-emulators"
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?
Milestone 2.1 — Engine Hardening + Protocol Emulators
Hardens the deception engine for production and makes it far more convincing by adding five protocol emulators. All within
blackwall-deception+ theblackwalld runwiring.Hardening
EngineLimits) — a shared semaphore bounds concurrent deception sessions (at-cap connections are dropped, never queued, so a flood can't exhaust tasks/FDs), and each session is wrapped in atokio::time::timeoutto kill slow-loris clients. Closes #21.blackwalld runcollects the v4/v6 TPROXYservetasks and the NFQUEUE loop into aJoinSetraced against the session-drain loop; a transport death now logs and yields a non-zero exit instead of silently running degraded. Closes #19.BannerSource::{Fixed,Live}(callingcurrent()per connection), and anotifyfile-watcher inrundrivesSharedBanners::reloadso banner edits take effect without a restart. Closes #20.Emulators (interactive
ServiceEmulators)220greeting then correct250/354/221/502reply codes through a basic envelope, with byte/command caps.PING→+PONG,INFOwithredis_version,+OK/-ERR, parses both array and inline commands.ERRpacket.StartupMessage, replies with a framedErrorResponse.All registered in
default_registryon standard ports (22, 25/587, 80/8080, 3306, 5432, 6379) with the generic banner/tarpit fallback. Closes #13, closes #14.Quality
--deny warningsclippy + rustfmt clean.Deferred (tracked)