mirror of https://github.com/Aidaho12/haproxy-wi
parent
a803e03801
commit
0ffd81bd69
|
@ -429,12 +429,15 @@ if serv is not None and form.getvalue('rows1') is not None:
|
|||
cmd="cat %s| awk -F\"/|:\" '$3>\"%s:00\" && $3<\"%s:00\"' |tail -%s %s %s" % (apache_log_path+"/"+serv, date, date1, rows, grep_act, grep)
|
||||
elif serv == 'haproxy-wi.error.log':
|
||||
cmd="cat %s| awk '$4>\"%s:00\" && $4<\"%s:00\"' |tail -%s %s %s" % (apache_log_path+"/"+serv, date, date1, rows, grep_act, grep)
|
||||
elif serv == 'fail2ban.log':
|
||||
cmd="cat %s| awk -F\"/|:\" '$3>\"%s:00\" && $3<\"%s:00\"' |tail -%s %s %s" % ("/var/log/"+serv, date, date1, rows, grep_act, grep)
|
||||
|
||||
output, stderr = funct.subprocess_execute(cmd)
|
||||
|
||||
print(funct.show_log(output))
|
||||
print(stderr)
|
||||
|
||||
|
||||
|
||||
if form.getvalue('viewlogs') is not None:
|
||||
viewlog = form.getvalue('viewlogs')
|
||||
|
|
12
app/sql.py
12
app/sql.py
|
@ -656,7 +656,7 @@ def get_dick_permit(**kwargs):
|
|||
if grp == '1':
|
||||
sql = """ select * from servers where enable = 1 %s %s %s """ % (disable, type_ip, nginx)
|
||||
else:
|
||||
sql = """ select * from servers where groups like '%{group}%' and (enable = 1 {disable}) {type_ip} {ip} {haproxy} {nginx} {keepalived}
|
||||
sql = """ select * from servers where groups = '{group}' and (enable = 1 {disable}) {type_ip} {ip} {haproxy} {nginx} {keepalived}
|
||||
""".format(group=grp, disable=disable, type_ip=type_ip, ip=ip, haproxy=haproxy, nginx=nginx, keepalived=keepalived)
|
||||
|
||||
try:
|
||||
|
@ -1140,7 +1140,10 @@ def select_waf_servers_metrics(uuid, **kwargs):
|
|||
|
||||
def select_waf_metrics(serv, **kwargs):
|
||||
con, cur = get_cur()
|
||||
sql = """ select * from (select * from waf_metrics where serv = '%s' order by `date` desc limit 60) order by `date`""" % serv
|
||||
if mysql_enable == '1':
|
||||
sql = """ select * from waf_metrics where serv = '%s' order by `date` desc limit 60 """ % serv
|
||||
else:
|
||||
sql = """ select * from (select * from waf_metrics where serv = '%s' order by `date` desc limit 60) order by `date`""" % serv
|
||||
try:
|
||||
cur.execute(sql)
|
||||
except sqltool.Error as e:
|
||||
|
@ -1240,7 +1243,10 @@ def delete_mentrics():
|
|||
|
||||
def select_metrics(serv, **kwargs):
|
||||
con, cur = get_cur()
|
||||
sql = """ select * from (select * from metrics where serv = '%s' order by `date` desc limit 60) order by `date` """ % serv
|
||||
if mysql_enable == '1':
|
||||
sql = """ select * from metrics where serv = '%s' order by `date` desc limit 60 """ % serv
|
||||
else:
|
||||
sql = """ select * from (select * from metrics where serv = '%s' order by `date` desc limit 60) order by `date` """ % serv
|
||||
try:
|
||||
cur.execute(sql)
|
||||
except sqltool.Error as e:
|
||||
|
|
|
@ -30,22 +30,6 @@
|
|||
host = host.replace(/\./g, '\\.');
|
||||
hostnamea.push(host)
|
||||
{% endfor %}
|
||||
$( function() {
|
||||
$( ".sortable" ).sortable({
|
||||
revert: true,
|
||||
placeholder: "ui-state-highlight"
|
||||
});
|
||||
$( ".sortable" ).disableSelection();
|
||||
|
||||
$( ".sortable" ).sortable({
|
||||
stop: function(event, ui) {
|
||||
var itemOrder = $('.sortable').sortable("toArray");
|
||||
for (var i = 0; i < itemOrder.length; i++) {
|
||||
console.log("Position: " + i + " ID: " + itemOrder[i]);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<div id="up-pannel" class="sortable">
|
||||
{% if servers|length == 0 %}
|
||||
|
@ -112,11 +96,14 @@
|
|||
<a id="start-{{ s.2 }}" class="start" title="Start {{service}} service">
|
||||
<span class="service-start" onclick="confirmAjaxAction('start', '{{action_service}}', '{{s.2}}')"></span>
|
||||
</a>
|
||||
<a id="stop-{{ s.2 }}" class="stop" title="Stop {{service}} service">
|
||||
<span class="service-stop" onclick="confirmAjaxAction('stop', '{{action_service}}', '{{s.2}}')"></span>
|
||||
<a id="reload-{{ s.2 }}" class="reload" title="Reload {{service}} service">
|
||||
<span class="service-reload" onclick="confirmAjaxAction('reload', '{{action_service}}', '{{s.2}}', '{{s.1}}')"></span>
|
||||
</a>
|
||||
<a id="restart-{{ s.2 }}" class="restart" title="Restart {{service}} service">
|
||||
<span class="service-reload" onclick="confirmAjaxAction('restart', '{{action_service}}', '{{s.2}}')"></span>
|
||||
<span class="service-reload service-restart" onclick="confirmAjaxAction('restart', '{{action_service}}', '{{s.2}}')"></span>
|
||||
</a>
|
||||
<a id="stop-{{ s.2 }}" class="stop" title="Stop {{service}} service">
|
||||
<span class="service-stop" onclick="confirmAjaxAction('stop', '{{action_service}}', '{{s.2}}')"></span>
|
||||
</a>
|
||||
</span>
|
||||
{% endif %}
|
||||
|
|
|
@ -291,8 +291,8 @@
|
|||
</td>
|
||||
<td class="padding10 first-collumn" style="width: 20%;">
|
||||
{% set values = dict() %}
|
||||
{% set values = {'2.0.5-1':'2.0.5-1','2.0.6-1':'2.0.6-1', '2.0.7-1':'2.0.7-1', '2.0.9-1':'2.0.9-1', '2.0.11-1':'2.0.11-1', '2.0.12-1':'2.0.12-1', '2.0.13-1':'2.0.13-1'} %}
|
||||
{{ select('hapver', values=values, selected='2.0.13-1', required='required') }}
|
||||
{% set values = {'2.0.5-1':'2.0.5-1','2.0.6-1':'2.0.6-1', '2.0.7-1':'2.0.7-1', '2.0.9-1':'2.0.9-1', '2.0.11-1':'2.0.11-1', '2.0.12-1':'2.0.12-1', '2.0.13-1':'2.0.13-1', '2.0.14-1':'2.0.14-1'} %}
|
||||
{{ select('hapver', values=values, selected='2.0.14-1', required='required') }}
|
||||
</td>
|
||||
<td class="padding10 first-collumn">
|
||||
<select autofocus required name="haproxyaddserv" id="haproxyaddserv">
|
||||
|
|
|
@ -59,6 +59,7 @@ except:
|
|||
|
||||
|
||||
selects = funct.get_files(log_path, format="log")
|
||||
selects.append(['fail2ban.log','fail2ban.log'])
|
||||
selects.append(['haproxy-wi.error.log','error.log'])
|
||||
selects.append(['haproxy-wi.access.log','access.log'])
|
||||
output_from_parsed_template = template.render(h2 = 1,
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
# Fail2Ban haproxy-wi filter
|
||||
#
|
||||
|
||||
[Definition]
|
||||
|
||||
# Mode for filter: normal (default) and aggressive (allows DDoS & brute force detection of mod_evasive)
|
||||
mode = normal
|
||||
|
||||
failregex = from <HOST> user: .* failed log in for: .*
|
||||
from <HOST> user: .* tried do action with wrong token for: .*
|
||||
Failed log in. Wrong username from <HOST>
|
||||
|
||||
ignoreregex =
|
||||
|
||||
# Author: Pavel Loginov
|
||||
# For project: haproxy-wi.org
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
[apache-noscript]
|
||||
enabled = true
|
||||
port = http,https
|
||||
filter = apache-noscript
|
||||
logpath = /var/log/httpd/*error.log
|
||||
maxretry = 6
|
||||
|
||||
[apache-overflows]
|
||||
enabled = true
|
||||
port = http,https
|
||||
filter = apache-overflows
|
||||
logpath = /var/log/httpd/*error.log
|
||||
maxretry = 2
|
||||
|
||||
[apache-nohome]
|
||||
enabled = true
|
||||
port = http,https
|
||||
filter = apache-nohome
|
||||
logpath = /var/log/httpd/*error.log
|
||||
maxretry = 2
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
[haproxy-wi]
|
||||
enabled = true
|
||||
filter = haproxy-wi
|
||||
port = http,https
|
||||
action = iptables[name=haproxy-wi, port=https, protocol=tcp]
|
||||
logpath = /var/www/haproxy-wi/log/haproxy-wi-*.log
|
||||
findtime = 600
|
||||
bantime = 600
|
||||
maxretry = 2
|
|
@ -0,0 +1,8 @@
|
|||
[ssh-iptables]
|
||||
backend = systemd
|
||||
enabled = true
|
||||
filter = sshd
|
||||
action = iptables[name=SSH, port=ssh, protocol=tcp]
|
||||
logpath = /var/log/secure
|
||||
maxretry = 2
|
||||
bantime = 2h
|
|
@ -225,6 +225,9 @@
|
|||
.fa-stop {
|
||||
color: red !important;
|
||||
}
|
||||
.service-restart > .fa-sync-alt {
|
||||
color: orange !important;
|
||||
}
|
||||
.service-reload::after {
|
||||
display: none;
|
||||
font-family: "Font Awesome 5 Solid";
|
||||
|
|
|
@ -462,7 +462,7 @@ function findGetParameter(parameterName) {
|
|||
return result;
|
||||
}
|
||||
function viewLogs() {
|
||||
if($('#viewlogs').val() == 'haproxy-wi.error.log' || $('#viewlogs').val() == 'haproxy-wi.access.log') {
|
||||
if($('#viewlogs').val() == 'haproxy-wi.error.log' || $('#viewlogs').val() == 'haproxy-wi.access.log' || $('#viewlogs').val() == 'fail2ban.log') {
|
||||
showApacheLog($('#viewlogs').val());
|
||||
} else {
|
||||
var rows = $('#rows').val()
|
||||
|
|
Loading…
Reference in New Issue