mirror of
https://github.com/linuxserver/docker-mods.git
synced 2026-02-04 20:49:31 +08:00
Added more info to f2b
This commit is contained in:
parent
cb6640b811
commit
097e860e5a
@ -4,7 +4,22 @@ import sqlite3
|
||||
|
||||
con = sqlite3.connect("/config/fail2ban/fail2ban.sqlite3")
|
||||
cur = con.cursor()
|
||||
results = cur.execute("SELECT jails.name, COUNT(bans.ip) AS bans FROM jails LEFT JOIN bans ON jails.name=bans.jail GROUP BY jails.name").fetchall()
|
||||
results = cur.execute("""
|
||||
SELECT jails.name,
|
||||
COUNT(bans.ip) AS bans,
|
||||
(SELECT DISTINCT bans.ip from bans where jails.name = bans.jail ORDER BY timeofban DESC) as last_ban,
|
||||
(SELECT DISTINCT bans.data from bans where jails.name = bans.jail ORDER BY timeofban DESC) as data
|
||||
FROM jails
|
||||
LEFT JOIN bans ON jails.name=bans.jail
|
||||
GROUP BY jails.name
|
||||
""").fetchall()
|
||||
con.close()
|
||||
output = json.dumps({k:v for (k,v) in results}, sort_keys=True)
|
||||
formatted_results = [{
|
||||
"name": name,
|
||||
"bans": bans,
|
||||
"last_ban": last_ban,
|
||||
"data": json.dumps(json.loads(data), indent=4, sort_keys=True) if data else None
|
||||
} for (name, bans, last_ban, data) in results]
|
||||
|
||||
output = json.dumps(formatted_results, sort_keys=True)
|
||||
print(output)
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
<style type="text/css">
|
||||
.status-div {
|
||||
display: inline-block;
|
||||
padding: 10px;
|
||||
padding-right: 20px;
|
||||
text-align: center;
|
||||
vertical-align: top;
|
||||
}
|
||||
@ -18,7 +18,7 @@
|
||||
text-align: left;
|
||||
}
|
||||
td {
|
||||
padding: 3px;
|
||||
padding-right: 30px;
|
||||
}
|
||||
.green-circle {
|
||||
padding: 2px 10px;
|
||||
@ -93,9 +93,11 @@
|
||||
$jails = json_decode($output, true);
|
||||
$status = "";
|
||||
$index = 0;
|
||||
foreach($jails as $jail=>$bans){
|
||||
foreach($jails as $jail){
|
||||
$tr_class = ($index % 2 == 0) ? 'shaded' : '';
|
||||
$status .= '<tr class="'.$tr_class.'"><td class="left-text"><span class="status-text">'.$jail.'</span></td><td><span class="status-text">'.$bans.'</span></td></tr>';
|
||||
$status .= '<tr class="'.$tr_class.'"><td class="left-text"><span class="status-text">'.$jail["name"].'</span></td>';
|
||||
$status .= '<td><span class="status-text">'.$jail["bans"].'</span></td>';
|
||||
$status .= '<td><span class="status-text" title="'.htmlspecialchars($jail["data"]).'">'.$jail["last_ban"].'</span></td></tr>';
|
||||
$index++;
|
||||
}
|
||||
return <<<HTML
|
||||
@ -107,6 +109,7 @@
|
||||
<tr>
|
||||
<td><h3>Jail</h3></td>
|
||||
<td><h3>Bans</h3></td>
|
||||
<td><h3>Last</h3></td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody class="tbody-data">
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user