Offenders (Fail2Ban TUI)
Offenders is a Linux terminal dashboard for Fail2Ban history and live jail status. Inspect banned IPs, ASN/Country summaries, jail settings and current membership; run on-demand WHOIS/RDNS lookups or a manual Coverage analysis for review.
Current dashboard with synthetic documentation addresses and no GeoIP databases.
- Explore rolling history periods, live jail status, and IP/ASN/Country summaries.
- Filter loaded results and investigate individual jails and IPs.
- Review Coverage evidence and explicitly validate copy-only filter candidates.
Reports and investigation are read-only with respect to Fail2Ban configuration and bans. There is no ban/unban action or automatic Fail2Ban mutation. Coverage never installs filters/jails or enables/reloads Fail2Ban. Persistent application changes are limited to explicit or opt-in GeoIP data/policy under your XDG data root; validation also uses temporary local sample files.
Quick start
Supported baseline: Ubuntu 24.04 / Python >=3.12 / Fail2Ban >=1.0.2.
The package supplies textual>=8.2.8,<9 and maxminddb>=3.1,<4.
Fail2Ban, readable logs, and narrowly scoped noninteractive sudo permissions must
be supplied separately; see installation and permissions.
First PyPI publication is pending. The intended distribution name is
offenders; registration and Trusted Publishing acceptance remain unproven.
After publication, the primary Linux install/run path is:
pipx install offenders
offenders
Until then, from a repository checkout with Python's venv support installed:
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e .
offenders
GeoIP enrichment is optional. Installation downloads no databases; an explicit update fetches DB-IP Lite, and automatic updates require opt-in. See the GeoIP guide for lifecycle and attribution. Coverage analysis and validation are explicit, manual, and copy-only; a sample match never establishes filter safety. See Coverage.
Documentation
The repository documentation is available now on the Pages documentation site.
- Documentation home
- Installation, upgrades, permissions, and migration
- Usage and authoritative controls
- GeoIP and ASN enrichment
- Coverage and validation
- Troubleshooting and source configuration
Repository · Releases · Developer appendix · Release preparation · MIT license
Release files for offenders 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| offenders-0.1.0.tar.gz | 120.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| offenders-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 202.9 kB
Release files / offenders-0.1.0.tar.gz
| Download URL | offenders-0.1.0.tar.gz |
|---|---|
| Size | 120.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
eaa514c8efb059cdcdd073738857e05015133c7f4547580cd78498596cd4ef7f
|
|
BLAKE2b-256 checksum How to use checksums |
070376a2415122d5cdbb9a02db6b0adf53f30a07e8babf76ebca270b8e512d10
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency logRelease files / offenders-0.1.0-py3-none-any.whl
| Download URL | offenders-0.1.0-py3-none-any.whl |
|---|---|
| Size | 82.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
32453400d5affb3a3a7c65a3929118ba80f748190f3b7aecfd6e24aa8574bbb5
|
|
BLAKE2b-256 checksum How to use checksums |
26147f66894cfc7f20305d648718762b2b58d74f0e1dec65182768a8bf4dc1ef
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency log