Articles
Adding country-level blocking to DenyHosts with GeoIP dataDenyHosts was designed to recognize repeated SSH login failures and respond by adding hostile addresses to a deny list. That model works well when the goal is…
The Architecture of Kodos: Separating Regex Logic From the UIKodos is a Python regular expression debugger designed to make pattern development more visible and less error-prone. Instead of treating a regex as an opaque…
Making DenyHosts Work Across Python 2 And Python 3DenyHosts began as a focused Python utility for protecting SSH services from repeated login attacks. Its job was straightforward: inspect authentication logs,…
Cleaning Up DenyHosts Without Breaking Its PurposeDenyHosts began with a focused objective: watch SSH authentication failures, identify abusive addresses, and prevent repeated attacks from consuming a server’s…
Releasing DenyHosts as an Open Source Project on GitHubDenyHosts began with a practical security problem: internet-connected Linux systems receive a steady stream of automated SSH login attempts. A single failed…
A Dependency-Free Rate Limiter for DenyHostsDenyHosts was designed to detect repeated SSH authentication failures and respond by adding abusive addresses to a deny list. That model works well when an…
Making DenyHosts Dependable Across Changing NetworksDenyHosts was designed for a practical Linux security problem: repeated SSH login attempts can consume administrator time and expose services to persistent…
Using DenyHosts Logs To Train A Simple Attack Detection ModelDenyHosts logs contain a useful record of hostile SSH activity: failed login attempts, repeated source addresses, blocked hosts, timestamps, and usernames…
The Challenges of Internationalizing Kodos for Non-English UsersKodos is a graphical debugger for Python regular expressions, designed to make pattern construction, testing, and troubleshooting more approachable. Its value…
Writing Useful Documentation for a Tool Like KodosTechnical documentation succeeds when it helps a real person complete a real task. For a developer tool such as Kodos, a Python regular expression debugger,…
