mirror of https://github.com/Aidaho12/haproxy-wi
parent
d4b36019e1
commit
8052f9e8ea
|
@ -313,8 +313,10 @@ def waf_install(serv, **kwargs):
|
||||||
|
|
||||||
upload(serv, tmp_config_path, script)
|
upload(serv, tmp_config_path, script)
|
||||||
os.system("rm -f %s" % script)
|
os.system("rm -f %s" % script)
|
||||||
sql.insert_waf_metrics_enable(serv, "0")
|
|
||||||
ssh_command(serv, commands, print_out="1")
|
stderr = ssh_command(serv, commands, print_out="1")
|
||||||
|
if stderr is None:
|
||||||
|
sql.insert_waf_metrics_enable(serv, "0")
|
||||||
|
|
||||||
def check_haproxy_version(serv):
|
def check_haproxy_version(serv):
|
||||||
import sql
|
import sql
|
||||||
|
@ -453,6 +455,7 @@ def ssh_command(serv, commands, **kwargs):
|
||||||
server_status(stdout)
|
server_status(stdout)
|
||||||
elif kwargs.get('print_out'):
|
elif kwargs.get('print_out'):
|
||||||
print(stdout.read().decode(encoding='UTF-8'))
|
print(stdout.read().decode(encoding='UTF-8'))
|
||||||
|
return stdout.read().decode(encoding='UTF-8')
|
||||||
else:
|
else:
|
||||||
return stdout.read().decode(encoding='UTF-8')
|
return stdout.read().decode(encoding='UTF-8')
|
||||||
|
|
||||||
|
|
|
@ -18,6 +18,11 @@ done
|
||||||
VERSION=$(echo $VERSION | awk -F"-" '{print $1}')
|
VERSION=$(echo $VERSION | awk -F"-" '{print $1}')
|
||||||
VERSION_MAJ=$(echo $VERSION | awk -F"." '{print $1"."$2}')
|
VERSION_MAJ=$(echo $VERSION | awk -F"." '{print $1"."$2}')
|
||||||
|
|
||||||
|
if (( $(awk 'BEGIN {print ("'$VERSION_MAJ'" < "'1.8'")}') )); then
|
||||||
|
echo 'error: Need HAProxy version 1.8 or later <a title="Close" id="errorMess"><b>X</b></a>'
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
if [[ $PROXY != "" ]]
|
if [[ $PROXY != "" ]]
|
||||||
then
|
then
|
||||||
export http_proxy="$PROXY"
|
export http_proxy="$PROXY"
|
||||||
|
|
34
app/sql.py
34
app/sql.py
|
@ -1105,17 +1105,16 @@ def select_alert(**kwargs):
|
||||||
form = cgi.FieldStorage()
|
form = cgi.FieldStorage()
|
||||||
error_mess = '<span class="alert alert-danger" id="error">All fields must be completed <a title="Close" id="errorMess"><b>X</b></a></span>'
|
error_mess = '<span class="alert alert-danger" id="error">All fields must be completed <a title="Close" id="errorMess"><b>X</b></a></span>'
|
||||||
|
|
||||||
if form.getvalue('newusername') is not None:
|
if form.getvalue('newuser') is not None:
|
||||||
email = form.getvalue('newemail')
|
email = form.getvalue('newemail')
|
||||||
password = form.getvalue('newpassword')
|
password = form.getvalue('newpassword')
|
||||||
role = form.getvalue('newrole')
|
role = form.getvalue('newrole')
|
||||||
group = form.getvalue('newgroupuser')
|
group = form.getvalue('newgroupuser')
|
||||||
new_user = form.getvalue('newusername')
|
new_user = form.getvalue('newusername')
|
||||||
|
print('Content-type: text/html\n')
|
||||||
if password is None or role is None or group is None:
|
if password is None or role is None or group is None:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
print(error_mess)
|
print(error_mess)
|
||||||
else:
|
else:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
if add_user(new_user, email, password, role, group):
|
if add_user(new_user, email, password, role, group):
|
||||||
show_update_user(new_user)
|
show_update_user(new_user)
|
||||||
|
|
||||||
|
@ -1126,11 +1125,10 @@ if form.getvalue('updateuser') is not None:
|
||||||
group = form.getvalue('usergroup')
|
group = form.getvalue('usergroup')
|
||||||
new_user = form.getvalue('updateuser')
|
new_user = form.getvalue('updateuser')
|
||||||
id = form.getvalue('id')
|
id = form.getvalue('id')
|
||||||
|
print('Content-type: text/html\n')
|
||||||
if password is None or role is None or group is None:
|
if password is None or role is None or group is None:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
print(error_mess)
|
print(error_mess)
|
||||||
else:
|
else:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
update_user(new_user, email, password, role, group, id)
|
update_user(new_user, email, password, role, group, id)
|
||||||
|
|
||||||
if form.getvalue('userdel') is not None:
|
if form.getvalue('userdel') is not None:
|
||||||
|
@ -1140,7 +1138,7 @@ if form.getvalue('userdel') is not None:
|
||||||
|
|
||||||
if form.getvalue('newserver') is not None:
|
if form.getvalue('newserver') is not None:
|
||||||
import funct
|
import funct
|
||||||
hostname = form.getvalue('newserver')
|
hostname = form.getvalue('servername')
|
||||||
ip = form.getvalue('newip')
|
ip = form.getvalue('newip')
|
||||||
group = form.getvalue('newservergroup')
|
group = form.getvalue('newservergroup')
|
||||||
typeip = form.getvalue('typeip')
|
typeip = form.getvalue('typeip')
|
||||||
|
@ -1151,11 +1149,10 @@ if form.getvalue('newserver') is not None:
|
||||||
metrics = form.getvalue('metrics')
|
metrics = form.getvalue('metrics')
|
||||||
page = form.getvalue('page')
|
page = form.getvalue('page')
|
||||||
page = page.split("#")[0]
|
page = page.split("#")[0]
|
||||||
|
print('Content-type: text/html\n')
|
||||||
if ip is None or group is None or cred is None:
|
if ip is None or group is None or cred is None:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
print(error_mess)
|
print(error_mess)
|
||||||
else:
|
else:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
if add_server(hostname, ip, group, typeip, enable, master, cred, alert, metrics):
|
if add_server(hostname, ip, group, typeip, enable, master, cred, alert, metrics):
|
||||||
show_update_server(ip, page)
|
show_update_server(ip, page)
|
||||||
|
|
||||||
|
@ -1166,11 +1163,14 @@ if form.getvalue('serverdel') is not None:
|
||||||
print("Ok")
|
print("Ok")
|
||||||
|
|
||||||
if form.getvalue('newgroup') is not None:
|
if form.getvalue('newgroup') is not None:
|
||||||
newgroup = form.getvalue('newgroup')
|
newgroup = form.getvalue('groupname')
|
||||||
desc = form.getvalue('newdesc')
|
desc = form.getvalue('newdesc')
|
||||||
print('Content-type: text/html\n')
|
print('Content-type: text/html\n')
|
||||||
if add_group(newgroup, desc):
|
if newgroup is None:
|
||||||
show_update_group(newgroup)
|
print(error_mess)
|
||||||
|
else:
|
||||||
|
if add_group(newgroup, desc):
|
||||||
|
show_update_group(newgroup)
|
||||||
|
|
||||||
if form.getvalue('groupdel') is not None:
|
if form.getvalue('groupdel') is not None:
|
||||||
print('Content-type: text/html\n')
|
print('Content-type: text/html\n')
|
||||||
|
@ -1181,11 +1181,10 @@ if form.getvalue('updategroup') is not None:
|
||||||
name = form.getvalue('updategroup')
|
name = form.getvalue('updategroup')
|
||||||
descript = form.getvalue('descript')
|
descript = form.getvalue('descript')
|
||||||
id = form.getvalue('id')
|
id = form.getvalue('id')
|
||||||
|
print('Content-type: text/html\n')
|
||||||
if name is None:
|
if name is None:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
print(error_mess)
|
print(error_mess)
|
||||||
else:
|
else:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
update_group(name, descript, id)
|
update_group(name, descript, id)
|
||||||
|
|
||||||
if form.getvalue('updateserver') is not None:
|
if form.getvalue('updateserver') is not None:
|
||||||
|
@ -1200,11 +1199,10 @@ if form.getvalue('updateserver') is not None:
|
||||||
cred = form.getvalue('cred')
|
cred = form.getvalue('cred')
|
||||||
alert = form.getvalue('alert_en')
|
alert = form.getvalue('alert_en')
|
||||||
metrics = form.getvalue('metrics')
|
metrics = form.getvalue('metrics')
|
||||||
|
print('Content-type: text/html\n')
|
||||||
if name is None or ip is None:
|
if name is None or ip is None:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
print(error_mess)
|
print(error_mess)
|
||||||
else:
|
else:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
#if funct.ssh_connect(ip, check=1):
|
#if funct.ssh_connect(ip, check=1):
|
||||||
update_server(name, ip, group, typeip, enable, master, id, cred, alert, metrics)
|
update_server(name, ip, group, typeip, enable, master, id, cred, alert, metrics)
|
||||||
#else:
|
#else:
|
||||||
|
@ -1217,12 +1215,11 @@ if form.getvalue('updatessh'):
|
||||||
group = form.getvalue('group')
|
group = form.getvalue('group')
|
||||||
username = form.getvalue('ssh_user')
|
username = form.getvalue('ssh_user')
|
||||||
password = form.getvalue('ssh_pass')
|
password = form.getvalue('ssh_pass')
|
||||||
|
print('Content-type: text/html\n')
|
||||||
if username is None:
|
if username is None:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
print(error_mess)
|
print(error_mess)
|
||||||
else:
|
else:
|
||||||
import funct
|
import funct
|
||||||
print('Content-type: text/html\n')
|
|
||||||
fullpath = funct.get_config_var('main', 'fullpath')
|
fullpath = funct.get_config_var('main', 'fullpath')
|
||||||
|
|
||||||
for sshs in select_ssh(id=id):
|
for sshs in select_ssh(id=id):
|
||||||
|
@ -1294,11 +1291,10 @@ if form.getvalue('updatetoken') is not None:
|
||||||
chanel = form.getvalue('updategchanel')
|
chanel = form.getvalue('updategchanel')
|
||||||
group = form.getvalue('updategroup')
|
group = form.getvalue('updategroup')
|
||||||
id = form.getvalue('id')
|
id = form.getvalue('id')
|
||||||
|
print('Content-type: text/html\n')
|
||||||
if token is None or chanel is None or group is None:
|
if token is None or chanel is None or group is None:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
print(error_mess)
|
print(error_mess)
|
||||||
else:
|
else:
|
||||||
print('Content-type: text/html\n')
|
|
||||||
update_telegram(token, chanel, group, id)
|
update_telegram(token, chanel, group, id)
|
||||||
|
|
||||||
if form.getvalue('updatesettings') is not None:
|
if form.getvalue('updatesettings') is not None:
|
||||||
|
|
|
@ -177,7 +177,7 @@
|
||||||
<input name="server_port" title="Backend port" size=1 placeholder="yyy" class="form-control">
|
<input name="server_port" title="Backend port" size=1 placeholder="yyy" class="form-control">
|
||||||
</span>
|
</span>
|
||||||
<span>
|
<span>
|
||||||
<a class="add-server" id="add-server" title="Add backend server" style="cursor: pointer;"></a>
|
<a class="add-server" id="add-server-input" title="Add backend server" style="cursor: pointer;"></a>
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -501,7 +501,7 @@
|
||||||
<input name="server_port" title="Backend port" size=1 placeholder="yyy" class="form-control">
|
<input name="server_port" title="Backend port" size=1 placeholder="yyy" class="form-control">
|
||||||
</span>
|
</span>
|
||||||
<span>
|
<span>
|
||||||
<a class="add-server" id="add-server2" title="Add backend server" style="cursor: pointer;"></a>
|
<a class="add-server" id="add-server-input2" title="Add backend server" style="cursor: pointer;"></a>
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
|
@ -1202,10 +1202,10 @@ $( function() {
|
||||||
} );
|
} );
|
||||||
});
|
});
|
||||||
var add_server_var = '<br /><input name="servers" title="Backend port" size=14 placeholder="xxx.xxx.xxx.xxx" class="form-control">: <input name="server_port" title="Backend port" size=1 placeholder="yyy" class="form-control">'
|
var add_server_var = '<br /><input name="servers" title="Backend port" size=14 placeholder="xxx.xxx.xxx.xxx" class="form-control">: <input name="server_port" title="Backend port" size=1 placeholder="yyy" class="form-control">'
|
||||||
$('#add-server').click(function() {
|
$('#add-server-input').click(function() {
|
||||||
$('#servers').append(add_server_var);
|
$('#servers').append(add_server_var);
|
||||||
});
|
});
|
||||||
$('#add-server2').click(function() {
|
$('#add-server-input2').click(function() {
|
||||||
$('#servers2').append(add_server_var);
|
$('#servers2').append(add_server_var);
|
||||||
});
|
});
|
||||||
$('.advance-show').click(function() {
|
$('.advance-show').click(function() {
|
||||||
|
|
|
@ -129,6 +129,7 @@ $( function() {
|
||||||
$.ajax( {
|
$.ajax( {
|
||||||
url: "sql.py",
|
url: "sql.py",
|
||||||
data: {
|
data: {
|
||||||
|
newuser: "1",
|
||||||
newusername: $('#new-username').val(),
|
newusername: $('#new-username').val(),
|
||||||
newpassword: $('#new-password').val(),
|
newpassword: $('#new-password').val(),
|
||||||
newemail: $('#new-email').val(),
|
newemail: $('#new-email').val(),
|
||||||
|
@ -158,7 +159,8 @@ $( function() {
|
||||||
$.ajax( {
|
$.ajax( {
|
||||||
url: "sql.py",
|
url: "sql.py",
|
||||||
data: {
|
data: {
|
||||||
newgroup: $('#new-group-add').val(),
|
newgroup: "1",
|
||||||
|
groupname: $('#new-group-add').val(),
|
||||||
newdesc: $('#new-desc').val(),
|
newdesc: $('#new-desc').val(),
|
||||||
},
|
},
|
||||||
type: "GET",
|
type: "GET",
|
||||||
|
@ -199,7 +201,8 @@ $( function() {
|
||||||
$.ajax( {
|
$.ajax( {
|
||||||
url: "sql.py",
|
url: "sql.py",
|
||||||
data: {
|
data: {
|
||||||
newserver: $('#new-server-add').val(),
|
newserver: "1",
|
||||||
|
servername: $('#new-server-add').val(),
|
||||||
newip: $('#new-ip').val(),
|
newip: $('#new-ip').val(),
|
||||||
newservergroup: $('#new-server-group-add').val(),
|
newservergroup: $('#new-server-group-add').val(),
|
||||||
typeip: typeip,
|
typeip: typeip,
|
||||||
|
|
|
@ -39,7 +39,11 @@ function installWaf(ip) {
|
||||||
success: function( data ) {
|
success: function( data ) {
|
||||||
data = data.replace(/\s+/g,' ');
|
data = data.replace(/\s+/g,' ');
|
||||||
if (data.indexOf('error') != '-1' || data.indexOf('Failed') != '-1') {
|
if (data.indexOf('error') != '-1' || data.indexOf('Failed') != '-1') {
|
||||||
$("#ajax").html('<div class="alert alert-danger">'+data+'</data>');
|
$("#ajax").html('<div class="alert alert-danger" style="margin: 15px;">'+data+'</data>');
|
||||||
|
$('#errorMess').click(function() {
|
||||||
|
$('#error').remove();
|
||||||
|
$('.alert-danger').remove();
|
||||||
|
});
|
||||||
} else if (data.indexOf('success') != '-1' ){
|
} else if (data.indexOf('success') != '-1' ){
|
||||||
$('.alert-danger').remove();
|
$('.alert-danger').remove();
|
||||||
$('.alert-warning').remove();
|
$('.alert-warning').remove();
|
||||||
|
|
Loading…
Reference in New Issue