Rev 2845 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log
Rev 2845 | Rev 2864 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | <?php |
1 | <?php |
2 | # $Id: security.php |
2 | # $Id: security.php 2864 2020-10-18 09:06:17Z rexy $ |
3 | 3 | ||
4 | $language = 'en'; |
4 | $language = 'en'; |
5 | if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { |
5 | if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { |
6 | $langue = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']); |
6 | $langue = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']); |
7 | $language = strtolower(substr(chop($langue[0]), 0, 2)); |
7 | $language = strtolower(substr(chop($langue[0]), 0, 2)); |
Line 52... | Line 52... | ||
52 | $regex = '/^\[(?P<date>[0-9\/\-: ]+)\] : alcasar-watchdog : (?P<ip>(?:(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])) is usurped \((?P<mac>(?:[0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-f]{2})\)\. Alcasar disconnect the user \((?P<user>.+)\)\.$/'; |
52 | $regex = '/^\[(?P<date>[0-9\/\-: ]+)\] : alcasar-watchdog : (?P<ip>(?:(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])) is usurped \((?P<mac>(?:[0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-f]{2})\)\. Alcasar disconnect the user \((?P<user>.+)\)\.$/'; |
53 | $file = fopen('/var/Save/security/watchdog.log', 'r'); |
53 | $file = fopen('/var/Save/security/watchdog.log', 'r'); |
54 | if ($file) { |
54 | if ($file) { |
55 | while (!feof($file)) { |
55 | while (!feof($file)) { |
56 | $line = fgets($file); |
56 | $line = fgets($file); |
57 | - | ||
58 | if (preg_match($regex, $line, $matches)) { |
57 | if (preg_match($regex, $line, $matches)) { |
59 | if (preg_match('/[0-9]{2}\/[0-9]{2}\/[0-9]{4}-[0-9]{2}:[0-9]{2}:[0-9]{2}/', $matches['date'], $matches_date)) { |
58 | if (preg_match('/[0-9]{2}\/[0-9]{2}\/[0-9]{4}-[0-9]{2}:[0-9]{2}:[0-9]{2}/', $matches['date'], $matches_date)) { |
60 | $matches['date'] = DateTime::createFromFormat('d/m/Y-H:i:s', $matches['date'])->format('Y-m-d H:i:s'); |
59 | $matches['date'] = DateTime::createFromFormat('d/m/Y-H:i:s', $matches['date'])->format('Y-m-d H:i:s'); |
61 | } |
60 | } |
62 | $spoofs[] = (object) [ |
61 | $spoofs[] = (object) [ |
Line 124... | Line 123... | ||
124 | </table> |
123 | </table> |
125 | </div> |
124 | </div> |
126 | <?php |
125 | <?php |
127 | } else if ($tab === 3) { |
126 | } else if ($tab === 3) { |
128 | $bans = []; |
127 | $bans = []; |
129 | $regex = '/^(?P<date>[0-9]{4}-[0-9]{2}-[0-9]{2}\ [0-9]{2}:[0-9]{2}:[0-9]{2}),[0-9]{3} fail2ban\.actions\[[0-9]+\]: |
128 | $regex = '/^(?P<date>[0-9]{4}-[0-9]{2}-[0-9]{2}\ [0-9]{2}:[0-9]{2}:[0-9]{2}),[0-9]{3} fail2ban\.actions\[[0-9]+\]: NOTICE \[(?P<rule>[a-zA-Z0-9_-]+)\] (?P<type>Ban|Unban) (?P<ip>[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})$/'; |
130 | $file = fopen('/var/log/fail2ban.log', 'r'); |
129 | $file = fopen('/var/log/fail2ban.log', 'r'); |
131 | if ($file) { |
130 | if ($file) { |
132 | while (!feof($file)) { |
131 | while (!feof($file)) { |
133 | $line = fgets($file); |
132 | $line = fgets($file); |
134 | 133 |