From 476a60908e004bd330a111a0e6028d61053fafa5 Mon Sep 17 00:00:00 2001
From: vogelor <vogelor@ispconfig3>
Date: Mon, 26 Jan 2009 13:48:02 -0500
Subject: [PATCH] Added fail2ban - Log to the monitor (if installed at the server). Updated installation-Instruction for debian

---
 interface/web/monitor/tools.inc.php |   38 +++++++++++++++++++++++++++++++++++++-
 1 files changed, 37 insertions(+), 1 deletions(-)

diff --git a/interface/web/monitor/tools.inc.php b/interface/web/monitor/tools.inc.php
index 8a36587..0800758 100644
--- a/interface/web/monitor/tools.inc.php
+++ b/interface/web/monitor/tools.inc.php
@@ -374,7 +374,7 @@
 
         /*
          * First, we have to detect, if there is any monitoring-data.
-         * If not (because the destribution is not supported) show this.
+         * If not (because rkhunter is not installed) show this.
          */
         $data = unserialize($record['data']);
         if ($data['output'] == ''){
@@ -392,6 +392,42 @@
     return $html;
 }
 
+function showFail2ban()
+{
+    global $app;
+
+    /* fetch the Data from the DB */
+    $record = $app->db->queryOneRecord("SELECT data, state FROM monitor_data WHERE type = 'log_fail2ban' and server_id = " . $_SESSION['monitor']['server_id'] . " order by created desc");
+
+    if(isset($record['data'])) {
+        $html =
+           '<div class="systemmonitor-state state-'.$record['state'].'">
+            <div class="systemmonitor-content icons32 ico-'.$record['state'].'">';
+
+        /*
+         * First, we have to detect, if there is any monitoring-data.
+         * If not (because fail2ban is not installed) show this.
+         */
+        $data = unserialize($record['data']);
+        if ($data == ''){
+            $html .= '<p>'.
+			'fail2ban is not installed at this server.<br />' .
+			'See more (for debian) <a href="http://www.howtoforge.net/fail2ban_debian_etch" target="htf">here...</a>'.
+			'</p>';
+        }
+        else {
+            $html .= nl2br($data);
+        }
+        $html .= '</div></div>';
+
+    } else {
+        $html = '<p>There is no data available at the moment.</p>';
+    }
+
+    return $html;
+}
+
+
 function showMailq()
 {
     global $app;

--
Gitblit v1.9.1