You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
🆕 What's New in V 0.4.0
🧱 Firewall & JSON
Optimized firewall-update.sh for faster batch processing of IPs.
Batch blocking per jail with a single ufw reload.
Safe unblocking with rule renumbering and reload after each deletion.
JSON updates and cleanup done once per jail, not per IP.
Core mechanisms, logging, and permissions unchanged.
This significantly reduces both the runtime and the lock duration of the blocklists, especially during ban events.
🖥️ UI & Statistics
Minor visual improvements in:
header.php, fail2ban-logstats.php, fail2ban-logstats.js
index.php (IP sorting)
style.css
🟡🔴 Marker Feature
IP Event Markers: Highlights repeated events per IP (yellow) and IPs in multiple jails (red).
Sortable & Filterable Mark Column: New column Mark with dropdown filter.
Dynamic Filtering: Markers update live with Action, Jail, IP, or Date filters.
Marker column placed between Action and IP, responsive layout preserved.
✨ New Feature: Copy Filtered Data to Clipboard
Added a new "Copy to Clipboard" button to export the currently filtered table data.
Implemented a dedicated JavaScript file assets/js/table-export.js for the copy functionality.
Integration with existing DataTables filtering logic to ensure only visible/filtered rows are copied.
Output Format: Tab-separated values (TSV) with all HTML tags removed for clean text export.
User Feedback:
Shows a warning if there’s no data to copy.
Shows a success or error alert based on the clipboard operation result.
This Feature will only work with enabled https for security reasons
Copy file name to clipboardExpand all lines: README.md
+52-33Lines changed: 52 additions & 33 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,8 +1,10 @@
1
1
# Fail2Ban-Report
2
-
> Beta 3.4 | Version 0.3.4
2
+
> Beta 4.0 | Version 0.4.0
3
3
4
4
> A simple and clean web-based dashboard to turn your daily Fail2Ban logs into searchable and filterable JSON reports — with optional IP blocklist management for UFW.
5
5
6
+
> This version brings more stability and performance, as well as improved visibility into Fail2Ban events.
7
+
6
8
**Integration**
7
9
>Designed for easy integration on a wide range of Linux systems — from small Raspberry Pis to modest business setups — though it’s not (yet) targeted at large-scale enterprise environments.
8
10
Flexibility comes from the two backend shell scripts, which you can adapt to your specific environment or log sources to provide the JSON data the web interface needs (daily JSON event files).
@@ -29,10 +31,11 @@ Fail2Ban-Report parses your `fail2ban.log` and generates JSON-based reports view
29
31
It provides optional tools to:
30
32
31
33
- 📊 Visualize **ban** and **unban** events, including per-jail statistics
32
-
- ⚡ Interact with IPs (e.g., manually block, unblock, or report to external services)
34
+
- ⚡ Interact with IPs (e.g., manually block, unblock, get report from external services)
33
35
- 📂 Maintain **jail-specific** persistent blocklists (JSON) with `active` and `pending` status
34
36
- 🔄 Sync those lists with your system firewall using **ufw**
35
-
- 🚨 Show **warning indicators** when ban rates exceed configurable thresholds
37
+
- 🚨 Show **warning indicators** when ban rates exceed configurable thresholds
38
+
- 🚨 Show **Markers** when a IP Address is present more than once in one (yellow) or more (red) jails.
36
39
37
40
> **Note:** Direct integration with other firewalls or native Fail2Ban jail commands is not yet implemented.
38
41
@@ -78,40 +81,54 @@ It provides optional tools to:
78
81
79
82
---
80
83
81
-
## 🆕 Fix V 0.3.4
82
-
Json Files should not loose Data anymore when several write processes trying to write the json file at the same time.
83
84
84
-
-`firewall-update.sh`: Added FLOCK to lock json when writing
85
-
-`block-ip.php`: Added FLOCK to lock json when writing
86
-
-`unblock-ip.php`: Added FLOCK to lock json when writing
87
-
-`blocklist-stats.php`: Shows now more correct States of active and pending when blocking and unblocking
85
+
## 🆕 What's New in V 0.4.0
86
+
87
+
### 🧱 Firewall & JSON
88
+
- Optimized `firewall-update.sh` for faster batch processing of IPs.
89
+
- Batch blocking per jail with a single `ufw reload`.
90
+
- Safe unblocking with rule renumbering and reload after each deletion.
91
+
- JSON updates and cleanup done once per jail, not per IP.
92
+
- Core mechanisms, logging, and permissions unchanged.
93
+
> This significantly reduces both the runtime and the lock duration of the blocklists, especially during ban events.
0 commit comments