mirror of https://github.com/Aidaho12/haproxy-wi
parent
40a8aaa2f5
commit
a066975a95
|
@ -9,4 +9,4 @@ community_bridge: # Replace with a single Community Bridge project-name e.g., cl
|
||||||
liberapay: # Replace with a single Liberapay username
|
liberapay: # Replace with a single Liberapay username
|
||||||
issuehunt: # Replace with a single IssueHunt username
|
issuehunt: # Replace with a single IssueHunt username
|
||||||
otechie: # Replace with a single Otechie username
|
otechie: # Replace with a single Otechie username
|
||||||
custom: ['https://paypal.me/loginovpavel', 'https://money.yandex.ru/to/410015575994949']
|
custom: ['https://paypal.me/loginovpavel']
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
Feel free to contribute and build the best HAProxy web interface.
|
|
||||||
|
|
||||||
Python 3.4 what's all =^.^=
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Haproxy web interface
|
# HAProxy-WI
|
||||||
Web interface(user-friendly web GUI, alerting, monitoring and secure) for managing HAProxy servers. Leave your [feedback](https://github.com/Aidaho12/haproxy-wi/issues)
|
Web interface(user-friendly web GUI, alerting, monitoring and secure) for managing HAProxy servers. Leave your [feedback](https://github.com/Aidaho12/haproxy-wi/issues)
|
||||||
|
|
||||||
# Youtube
|
# Youtube
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import cgi
|
|
||||||
import os
|
import os
|
||||||
import funct
|
import funct
|
||||||
import sql
|
import sql
|
||||||
|
@ -20,12 +19,8 @@ funct.check_login()
|
||||||
funct.page_for_admin(level = 2)
|
funct.page_for_admin(level = 2)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params()
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
servers = sql.get_dick_permit()
|
|
||||||
user_group = sql.get_user_group_by_uuid(user_id.value)
|
user_group = sql.get_user_group_by_uuid(user_id.value)
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@ -46,7 +41,7 @@ black_lists = funct.get_files(dir=black_dir, format="lst")
|
||||||
|
|
||||||
|
|
||||||
template = template.render(title = "Add",
|
template = template.render(title = "Add",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = role,
|
||||||
user = user,
|
user = user,
|
||||||
selects = servers,
|
selects = servers,
|
||||||
add = form.getvalue('add'),
|
add = form.getvalue('add'),
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import cgi
|
|
||||||
import os
|
import os
|
||||||
import http.cookies
|
|
||||||
import funct
|
import funct
|
||||||
import sql
|
import sql
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
|
@ -21,15 +19,10 @@ error = ""
|
||||||
aftersave = ""
|
aftersave = ""
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params()
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
role = sql.get_user_role_by_uuid(user_id.value)
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
if service == 'keepalived':
|
if service == 'keepalived':
|
||||||
title = "Working with Keepalived configs"
|
title = "Working with Keepalived configs"
|
||||||
action = "config.py?service=keepalived"
|
action = "config.py?service=keepalived"
|
||||||
|
|
27
app/funct.py
27
app/funct.py
|
@ -5,11 +5,13 @@ import os, sys
|
||||||
form = cgi.FieldStorage()
|
form = cgi.FieldStorage()
|
||||||
serv = form.getvalue('serv')
|
serv = form.getvalue('serv')
|
||||||
|
|
||||||
|
|
||||||
def get_app_dir():
|
def get_app_dir():
|
||||||
d = sys.path[0]
|
d = sys.path[0]
|
||||||
d = d.split('/')[-1]
|
d = d.split('/')[-1]
|
||||||
return sys.path[0] if d == "app" else os.path.dirname(sys.path[0])
|
return sys.path[0] if d == "app" else os.path.dirname(sys.path[0])
|
||||||
|
|
||||||
|
|
||||||
def get_config_var(sec, var):
|
def get_config_var(sec, var):
|
||||||
from configparser import ConfigParser, ExtendedInterpolation
|
from configparser import ConfigParser, ExtendedInterpolation
|
||||||
try:
|
try:
|
||||||
|
@ -25,6 +27,7 @@ def get_config_var(sec, var):
|
||||||
print('Content-type: text/html\n')
|
print('Content-type: text/html\n')
|
||||||
print('<center><div class="alert alert-danger">Check the config file. Presence section %s and parameter %s</div>' % (sec, var))
|
print('<center><div class="alert alert-danger">Check the config file. Presence section %s and parameter %s</div>' % (sec, var))
|
||||||
|
|
||||||
|
|
||||||
def get_data(type):
|
def get_data(type):
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from pytz import timezone
|
from pytz import timezone
|
||||||
|
@ -111,6 +114,7 @@ def telegram_send_mess(mess, **kwargs):
|
||||||
logging('localhost', mess, haproxywi=1)
|
logging('localhost', mess, haproxywi=1)
|
||||||
sys.exit()
|
sys.exit()
|
||||||
|
|
||||||
|
|
||||||
def check_login(**kwargs):
|
def check_login(**kwargs):
|
||||||
import sql
|
import sql
|
||||||
import http.cookies
|
import http.cookies
|
||||||
|
@ -129,6 +133,7 @@ def check_login(**kwargs):
|
||||||
print('<meta http-equiv="refresh" content="0; url=login.py?ref=%s">' % ref)
|
print('<meta http-equiv="refresh" content="0; url=login.py?ref=%s">' % ref)
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
||||||
def is_admin(**kwargs):
|
def is_admin(**kwargs):
|
||||||
import sql
|
import sql
|
||||||
import http.cookies
|
import http.cookies
|
||||||
|
@ -150,6 +155,7 @@ def is_admin(**kwargs):
|
||||||
return False
|
return False
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
def page_for_admin(**kwargs):
|
def page_for_admin(**kwargs):
|
||||||
give_level = 1
|
give_level = 1
|
||||||
give_level = kwargs.get("level")
|
give_level = kwargs.get("level")
|
||||||
|
@ -227,6 +233,7 @@ def ssh_connect(serv, **kwargs):
|
||||||
pass
|
pass
|
||||||
return str(error)
|
return str(error)
|
||||||
|
|
||||||
|
|
||||||
def get_config(serv, cfg, **kwargs):
|
def get_config(serv, cfg, **kwargs):
|
||||||
import sql
|
import sql
|
||||||
|
|
||||||
|
@ -254,6 +261,7 @@ def get_config(serv, cfg, **kwargs):
|
||||||
logging('localhost', ssh, haproxywi=1)
|
logging('localhost', ssh, haproxywi=1)
|
||||||
return ssh
|
return ssh
|
||||||
|
|
||||||
|
|
||||||
def diff_config(oldcfg, cfg):
|
def diff_config(oldcfg, cfg):
|
||||||
log_path = get_config_var('main', 'log_path')
|
log_path = get_config_var('main', 'log_path')
|
||||||
diff = ""
|
diff = ""
|
||||||
|
@ -898,4 +906,21 @@ def out_error(e):
|
||||||
else:
|
else:
|
||||||
error = e.args[0]
|
error = e.args[0]
|
||||||
print('<span class="alert alert-danger" style="height: 20px;margin-bottom: 20px;" id="error">An error occurred: ' + error + ' <a title="Close" id="errorMess"><b>X</b></a></span>')
|
print('<span class="alert alert-danger" style="height: 20px;margin-bottom: 20px;" id="error">An error occurred: ' + error + ' <a title="Close" id="errorMess"><b>X</b></a></span>')
|
||||||
|
|
||||||
|
|
||||||
|
def get_users_params(**kwargs):
|
||||||
|
import http.cookies
|
||||||
|
import sql
|
||||||
|
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
||||||
|
user_id = cookie.get('uuid')
|
||||||
|
user = sql.get_user_name_by_uuid(user_id.value)
|
||||||
|
role = sql.get_user_role_by_uuid(user_id.value)
|
||||||
|
token = sql.get_token(user_id.value)
|
||||||
|
if kwargs.get('virt'):
|
||||||
|
servers = sql.get_dick_permit(virt=1)
|
||||||
|
elif kwargs.get('disable'):
|
||||||
|
servers = sql.get_dick_permit(disable=0)
|
||||||
|
else:
|
||||||
|
servers = sql.get_dick_permit()
|
||||||
|
|
||||||
|
return user, user_id, role, token, servers
|
13
app/ha.py
13
app/ha.py
|
@ -1,8 +1,5 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import http.cookies
|
import funct
|
||||||
import cgi
|
|
||||||
import os
|
|
||||||
import funct, sql
|
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
env = Environment(loader=FileSystemLoader('templates/'))
|
env = Environment(loader=FileSystemLoader('templates/'))
|
||||||
template = env.get_template('ha.html')
|
template = env.get_template('ha.html')
|
||||||
|
@ -15,17 +12,13 @@ form = funct.form
|
||||||
serv = form.getvalue('serv')
|
serv = form.getvalue('serv')
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params()
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
servers = sql.get_dick_permit()
|
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
output_from_parsed_template = template.render(h2 = 1, title = "Configure HA",
|
output_from_parsed_template = template.render(h2 = 1, title = "Configure HA",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = role,
|
||||||
user = user,
|
user = user,
|
||||||
serv = serv,
|
serv = serv,
|
||||||
selects = servers,
|
selects = servers,
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import funct, sql
|
import funct, sql
|
||||||
import os, http.cookies
|
|
||||||
import cgi
|
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
env = Environment(loader=FileSystemLoader('templates/'))
|
env = Environment(loader=FileSystemLoader('templates/'))
|
||||||
template = env.get_template('hapservers.html')
|
template = env.get_template('hapservers.html')
|
||||||
|
@ -10,12 +8,9 @@ print('Content-type: text/html\n')
|
||||||
funct.check_login()
|
funct.check_login()
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params()
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
users = sql.select_users()
|
users = sql.select_users()
|
||||||
groups = sql.select_groups()
|
groups = sql.select_groups()
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@ -80,7 +75,7 @@ for s in servers:
|
||||||
template = template.render(h2 = 1,
|
template = template.render(h2 = 1,
|
||||||
autorefresh = autorefresh,
|
autorefresh = autorefresh,
|
||||||
title = title,
|
title = title,
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = role,
|
||||||
user = user,
|
user = user,
|
||||||
users = users,
|
users = users,
|
||||||
groups = groups,
|
groups = groups,
|
||||||
|
|
12
app/logs.py
12
app/logs.py
|
@ -1,9 +1,5 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
import cgi
|
|
||||||
import funct
|
import funct
|
||||||
import sql
|
|
||||||
import os, http
|
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
env = Environment(loader=FileSystemLoader('templates/'))
|
env = Environment(loader=FileSystemLoader('templates/'))
|
||||||
template = env.get_template('logs.html')
|
template = env.get_template('logs.html')
|
||||||
|
@ -30,11 +26,7 @@ print('Content-type: text/html\n')
|
||||||
funct.check_login()
|
funct.check_login()
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params()
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
servers = sql.get_dick_permit()
|
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@ -46,7 +38,7 @@ else:
|
||||||
template = template.render(h2 = 1,
|
template = template.render(h2 = 1,
|
||||||
autorefresh = 1,
|
autorefresh = 1,
|
||||||
title = title,
|
title = title,
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = role,
|
||||||
user = user,
|
user = user,
|
||||||
onclick = "showLog()",
|
onclick = "showLog()",
|
||||||
select_id = "serv",
|
select_id = "serv",
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import os
|
|
||||||
import sql
|
import sql
|
||||||
import http.cookies
|
|
||||||
import funct
|
import funct
|
||||||
import sql
|
import sql
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
|
@ -12,17 +10,14 @@ print('Content-type: text/html\n')
|
||||||
funct.check_login()
|
funct.check_login()
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params()
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
template = template.render(h2 = 1, title = "Metrics",
|
template = template.render(h2 = 1, title = "Metrics",
|
||||||
autorefresh = 1,
|
autorefresh = 1,
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = role,
|
||||||
user = user,
|
user = user,
|
||||||
servers = sql.select_servers_metrics(user_id.value),
|
servers = sql.select_servers_metrics(user_id.value),
|
||||||
versions = funct.versions(),
|
versions = funct.versions(),
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import funct, sql
|
import funct, sql
|
||||||
import create_db
|
import create_db
|
||||||
import os, http.cookies
|
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
env = Environment(loader=FileSystemLoader('templates/'))
|
env = Environment(loader=FileSystemLoader('templates/'))
|
||||||
template = env.get_template('ovw.html')
|
template = env.get_template('ovw.html')
|
||||||
|
@ -14,13 +13,9 @@ create_db.update_all_silent()
|
||||||
funct.check_login()
|
funct.check_login()
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params()
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
users = sql.select_users()
|
users = sql.select_users()
|
||||||
groups = sql.select_groups()
|
groups = sql.select_groups()
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
role = sql.get_user_role_by_uuid(user_id.value)
|
|
||||||
cmd = "ps ax |grep checker_mas |grep -v grep |wc -l"
|
cmd = "ps ax |grep checker_mas |grep -v grep |wc -l"
|
||||||
checker_master, stderr = funct.subprocess_execute(cmd)
|
checker_master, stderr = funct.subprocess_execute(cmd)
|
||||||
cmd = "ps ax |grep checker_worker |grep -v grep |wc -l"
|
cmd = "ps ax |grep checker_worker |grep -v grep |wc -l"
|
||||||
|
@ -33,7 +28,6 @@ try:
|
||||||
keep_alive, stderr = funct.subprocess_execute(cmd)
|
keep_alive, stderr = funct.subprocess_execute(cmd)
|
||||||
cmd = "ps ax |grep '(wsgi:api)'|grep -v grep|wc -l"
|
cmd = "ps ax |grep '(wsgi:api)'|grep -v grep|wc -l"
|
||||||
api, stderr = funct.subprocess_execute(cmd)
|
api, stderr = funct.subprocess_execute(cmd)
|
||||||
servers = sql.get_dick_permit()
|
|
||||||
except:
|
except:
|
||||||
role = ''
|
role = ''
|
||||||
user = ''
|
user = ''
|
||||||
|
|
|
@ -1,8 +1,5 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import os
|
|
||||||
import http, cgi
|
|
||||||
import funct
|
import funct
|
||||||
import sql
|
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
env = Environment(loader=FileSystemLoader('templates/'))
|
env = Environment(loader=FileSystemLoader('templates/'))
|
||||||
template = env.get_template('runtimeapi.html')
|
template = env.get_template('runtimeapi.html')
|
||||||
|
@ -12,11 +9,7 @@ funct.check_login()
|
||||||
form = funct.form
|
form = funct.form
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params(virt=1)
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
servers = sql.get_dick_permit(virt=1)
|
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
servbackend = form.getvalue('servbackend')
|
servbackend = form.getvalue('servbackend')
|
||||||
serv = form.getvalue('serv')
|
serv = form.getvalue('serv')
|
||||||
if servbackend is None:
|
if servbackend is None:
|
||||||
|
@ -27,7 +20,7 @@ except:
|
||||||
|
|
||||||
output_from_parsed_template = template.render(h2 = 1,
|
output_from_parsed_template = template.render(h2 = 1,
|
||||||
title = "Runtime API",
|
title = "Runtime API",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = role,
|
||||||
user = user,
|
user = user,
|
||||||
onclick = "showRuntime()",
|
onclick = "showRuntime()",
|
||||||
select_id = "serv",
|
select_id = "serv",
|
|
@ -1,9 +1,6 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import cgi
|
|
||||||
import os
|
import os
|
||||||
import http.cookies
|
|
||||||
import funct
|
import funct
|
||||||
import sql
|
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
env = Environment(loader=FileSystemLoader('templates/'), autoescape=True,extensions=['jinja2.ext.loopcontrols'])
|
env = Environment(loader=FileSystemLoader('templates/'), autoescape=True,extensions=['jinja2.ext.loopcontrols'])
|
||||||
template = env.get_template('sections.html')
|
template = env.get_template('sections.html')
|
||||||
|
@ -24,12 +21,7 @@ start_line = ""
|
||||||
end_line = ""
|
end_line = ""
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params()
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
servers = sql.get_dick_permit()
|
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
role = sql.get_user_role_by_uuid(user_id.value)
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import http
|
|
||||||
import cgi
|
|
||||||
import sys
|
|
||||||
import os
|
|
||||||
import funct
|
import funct
|
||||||
import sql
|
import sql
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
|
@ -14,18 +10,14 @@ print('Content-type: text/html\n')
|
||||||
funct.check_login()
|
funct.check_login()
|
||||||
funct.page_for_admin(level = 2)
|
funct.page_for_admin(level = 2)
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params()
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
servers = sql.get_dick_permit()
|
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
ldap_enable = sql.get_setting('ldap_enable')
|
ldap_enable = sql.get_setting('ldap_enable')
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
output_from_parsed_template = template.render(title = "Servers manage",
|
output_from_parsed_template = template.render(title = "Servers manage",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = role,
|
||||||
user = user,
|
user = user,
|
||||||
users = sql.select_users(),
|
users = sql.select_users(),
|
||||||
groups = sql.select_groups(),
|
groups = sql.select_groups(),
|
||||||
|
|
|
@ -58,7 +58,7 @@
|
||||||
<li><a href="/app/hapservers.py" title="Overview HAProxy servers" class="overview-link head-submenu">Overview</a> </li>
|
<li><a href="/app/hapservers.py" title="Overview HAProxy servers" class="overview-link head-submenu">Overview</a> </li>
|
||||||
<li><a href="/app/config.py" title="Working with HAProxy configs" class="edit head-submenu">Configs</a></li>
|
<li><a href="/app/config.py" title="Working with HAProxy configs" class="edit head-submenu">Configs</a></li>
|
||||||
<li><a href="/app/viewsttats.py" title="Show stats" class="stats head-submenu">Stats</a></li>
|
<li><a href="/app/viewsttats.py" title="Show stats" class="stats head-submenu">Stats</a></li>
|
||||||
<li><a href="/app/edit.py" title="Runtime API" class="runtime head-submenu">Runtime API</a></li>
|
<li><a href="/app/runtimeapi.py" title="Runtime API" class="runtime head-submenu">Runtime API</a></li>
|
||||||
<li><a href="/app/metrics.py" title="Metrics" class="metrics head-submenu">Metrics</a></li>
|
<li><a href="/app/metrics.py" title="Metrics" class="metrics head-submenu">Metrics</a></li>
|
||||||
{% if role <= 2 %}
|
{% if role <= 2 %}
|
||||||
<li><a href="/app/add.py#proxy" title="Add proxy" class="add head-submenu" id="add1">Add proxy</a></li>
|
<li><a href="/app/add.py#proxy" title="Add proxy" class="add head-submenu" id="add1">Add proxy</a></li>
|
||||||
|
|
|
@ -14,6 +14,18 @@
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</p>
|
</p>
|
||||||
|
{% if aftersave %}
|
||||||
|
<div class="alert alert-info"><b>The following files have been deleted:</b><br /> </div>
|
||||||
|
{% if stderr %}
|
||||||
|
{% include 'include/errors.html' %}
|
||||||
|
{% else %}
|
||||||
|
<div class="alert alert-success">
|
||||||
|
{% for f in file %}
|
||||||
|
{{f}}
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
{% if open %}
|
{% if open %}
|
||||||
<center>
|
<center>
|
||||||
<h4>Choose old version</h4>
|
<h4>Choose old version</h4>
|
||||||
|
@ -35,17 +47,5 @@
|
||||||
</form>
|
</form>
|
||||||
</center>
|
</center>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if aftersave %}
|
|
||||||
<div class="alert alert-info"><b>The following files were deleted:</b><br /> </div>
|
|
||||||
{% if stderr %}
|
|
||||||
{% include 'include/errors.html' %}
|
|
||||||
{% else %}
|
|
||||||
<div class="alert alert-success">
|
|
||||||
{% for f in file %}
|
|
||||||
{{f}}
|
|
||||||
{% endfor %}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
{% endif %}
|
|
||||||
</center>
|
</center>
|
||||||
{% endblock %}
|
{% endblock %}
|
14
app/users.py
14
app/users.py
|
@ -1,10 +1,5 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
import http
|
|
||||||
import cgi
|
|
||||||
import sys
|
|
||||||
import os
|
|
||||||
import funct
|
import funct
|
||||||
import sql
|
import sql
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
|
@ -17,12 +12,8 @@ print('Content-type: text/html\n')
|
||||||
funct.check_login()
|
funct.check_login()
|
||||||
funct.page_for_admin()
|
funct.page_for_admin()
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params()
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
users = sql.select_users()
|
users = sql.select_users()
|
||||||
servers = sql.get_dick_permit()
|
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
settings = sql.get_setting('', all=1)
|
settings = sql.get_setting('', all=1)
|
||||||
ldap_enable = sql.get_setting('ldap_enable')
|
ldap_enable = sql.get_setting('ldap_enable')
|
||||||
except:
|
except:
|
||||||
|
@ -30,7 +21,7 @@ except:
|
||||||
|
|
||||||
|
|
||||||
template = template.render(title = "Admin area: users manage",
|
template = template.render(title = "Admin area: users manage",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = role,
|
||||||
user = user,
|
user = user,
|
||||||
users = users,
|
users = users,
|
||||||
groups = sql.select_groups(),
|
groups = sql.select_groups(),
|
||||||
|
@ -42,5 +33,6 @@ template = template.render(title = "Admin area: users manage",
|
||||||
token = token,
|
token = token,
|
||||||
versions = funct.versions(),
|
versions = funct.versions(),
|
||||||
settings = settings,
|
settings = settings,
|
||||||
|
backups = sql.select_backups(),
|
||||||
ldap_enable = ldap_enable)
|
ldap_enable = ldap_enable)
|
||||||
print(template)
|
print(template)
|
||||||
|
|
|
@ -1,9 +1,6 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import http.cookies
|
|
||||||
import cgi
|
|
||||||
import os
|
import os
|
||||||
import funct, sql
|
import funct, sql
|
||||||
import glob
|
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
env = Environment(loader=FileSystemLoader('templates/'))
|
env = Environment(loader=FileSystemLoader('templates/'))
|
||||||
template = env.get_template('delver.html')
|
template = env.get_template('delver.html')
|
||||||
|
@ -25,11 +22,7 @@ if form.getvalue('configver'):
|
||||||
template = env.get_template('configver.html')
|
template = env.get_template('configver.html')
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params(disable=1)
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
servers = sql.get_dick_permit(disable=0)
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@ -86,7 +79,7 @@ if serv is not None and form.getvalue('config') is not None:
|
||||||
|
|
||||||
|
|
||||||
template = template.render(h2 = 1, title = title,
|
template = template.render(h2 = 1, title = title,
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = role,
|
||||||
action = action,
|
action = action,
|
||||||
user = user,
|
user = user,
|
||||||
select_id = "serv",
|
select_id = "serv",
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import os, sys
|
import os
|
||||||
import http, cgi
|
|
||||||
import glob
|
|
||||||
import datetime
|
import datetime
|
||||||
import funct
|
import funct
|
||||||
import sql
|
import sql
|
||||||
|
@ -51,10 +49,7 @@ except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params()
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@ -65,7 +60,7 @@ selects.append(['haproxy-wi.access.log','access.log'])
|
||||||
output_from_parsed_template = template.render(h2 = 1,
|
output_from_parsed_template = template.render(h2 = 1,
|
||||||
autorefresh = 1,
|
autorefresh = 1,
|
||||||
title = "View internal logs",
|
title = "View internal logs",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = role,
|
||||||
user = user,
|
user = user,
|
||||||
onclick = "viewLogs()",
|
onclick = "viewLogs()",
|
||||||
serv = serv,
|
serv = serv,
|
||||||
|
|
|
@ -1,27 +1,20 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import http.cookies, os
|
|
||||||
import cgi
|
|
||||||
import funct
|
import funct
|
||||||
import sql
|
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
env = Environment(loader=FileSystemLoader('templates/'))
|
env = Environment(loader=FileSystemLoader('templates/'))
|
||||||
template = env.get_template('viewstats.html')
|
template = env.get_template('viewstats.html')
|
||||||
form = funct.form
|
form = funct.form
|
||||||
serv = form.getvalue('serv')
|
serv = form.getvalue('serv')
|
||||||
|
service = form.getvalue('service')
|
||||||
|
|
||||||
print('Content-type: text/html\n')
|
print('Content-type: text/html\n')
|
||||||
funct.check_login()
|
funct.check_login()
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params(virt=1)
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
role = sql.get_user_role_by_uuid(user_id.value)
|
|
||||||
servers = sql.get_dick_permit(virt=1)
|
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
|
|
||||||
if serv is None:
|
if serv is None:
|
||||||
first_serv = sql.get_dick_permit()
|
first_serv = servers
|
||||||
for i in first_serv:
|
for i in first_serv:
|
||||||
serv = i[2]
|
serv = i[2]
|
||||||
break
|
break
|
||||||
|
@ -39,6 +32,7 @@ output_from_parsed_template = template.render(h2 = 1,
|
||||||
selects = servers,
|
selects = servers,
|
||||||
serv = serv,
|
serv = serv,
|
||||||
versions = funct.versions(),
|
versions = funct.versions(),
|
||||||
|
service = service,
|
||||||
token = token)
|
token = token)
|
||||||
print(output_from_parsed_template)
|
print(output_from_parsed_template)
|
||||||
|
|
||||||
|
|
11
app/waf.py
11
app/waf.py
|
@ -1,7 +1,4 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import os
|
|
||||||
import sql
|
|
||||||
import http
|
|
||||||
import funct
|
import funct
|
||||||
import sql
|
import sql
|
||||||
from jinja2 import Environment, FileSystemLoader
|
from jinja2 import Environment, FileSystemLoader
|
||||||
|
@ -13,19 +10,17 @@ funct.check_login()
|
||||||
funct.page_for_admin(level = 2)
|
funct.page_for_admin(level = 2)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cookie = http.cookies.SimpleCookie(os.environ.get("HTTP_COOKIE"))
|
user, user_id, role, token, servers = funct.get_users_params()
|
||||||
user_id = cookie.get('uuid')
|
|
||||||
user = sql.get_user_name_by_uuid(user_id.value)
|
|
||||||
token = sql.get_token(user_id.value)
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
template = template.render(h2 = 1, title = "Web application firewall",
|
template = template.render(h2 = 1, title = "Web application firewall",
|
||||||
autorefresh = 1,
|
autorefresh = 1,
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = role,
|
||||||
user = user,
|
user = user,
|
||||||
servers = sql.select_waf_servers_metrics(user_id.value),
|
servers = sql.select_waf_servers_metrics(user_id.value),
|
||||||
|
servers_all = servers,
|
||||||
versions = funct.versions(),
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(template)
|
print(template)
|
|
@ -27,6 +27,10 @@
|
||||||
<script src="/inc/jquery-1.12.4.js"></script>
|
<script src="/inc/jquery-1.12.4.js"></script>
|
||||||
<script src="/inc/jquery-ui.js"></script>
|
<script src="/inc/jquery-ui.js"></script>
|
||||||
<script src="/inc/nprogress.js"></script>
|
<script src="/inc/nprogress.js"></script>
|
||||||
|
<script src="/inc/script.js"></script>
|
||||||
|
<script defer src="/inc/fa-solid.min.js"></script>
|
||||||
|
<script defer src="/inc/fontawesome.min.js"></script>
|
||||||
|
<link href="/inc/awesome.css" rel="stylesheet">
|
||||||
<meta http-equiv="refresh" content="0; url=/app/overview.py" />
|
<meta http-equiv="refresh" content="0; url=/app/overview.py" />
|
||||||
</head>
|
</head>
|
||||||
<body style="background-color: #239dee;">
|
<body style="background-color: #239dee;">
|
||||||
|
|
Loading…
Reference in New Issue