-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1 from VultureProject/dev
Release 1.76
- Loading branch information
Showing
1,424 changed files
with
210,959 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,149 @@ | ||
# Created by https://www.gitignore.io/api/emacs,jetbrains,sublimetext,vim | ||
|
||
### Emacs ### | ||
# -*- mode: gitignore; -*- | ||
*~ | ||
\#*\# | ||
/.emacs.desktop | ||
/.emacs.desktop.lock | ||
*.elc | ||
auto-save-list | ||
tramp | ||
.\#* | ||
|
||
# Org-mode | ||
.org-id-locations | ||
*_archive | ||
|
||
# flymake-mode | ||
*_flymake.* | ||
|
||
# eshell files | ||
/eshell/history | ||
/eshell/lastdir | ||
|
||
# elpa packages | ||
/elpa/ | ||
|
||
# reftex files | ||
*.rel | ||
|
||
# AUCTeX auto folder | ||
/auto/ | ||
|
||
# cask packages | ||
.cask/ | ||
dist/ | ||
|
||
# Flycheck | ||
flycheck_*.el | ||
|
||
# server auth directory | ||
/server/ | ||
|
||
# projectiles files | ||
.projectile | ||
|
||
### JetBrains ### | ||
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm | ||
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 | ||
|
||
# User-specific stuff: | ||
.idea* | ||
.idea/workspace.xml | ||
.idea/tasks.xml | ||
.idea/dictionaries | ||
.idea/vcs.xml | ||
.idea/jsLibraryMappings.xml | ||
|
||
# Sensitive or high-churn files: | ||
.idea/dataSources.ids | ||
.idea/dataSources.xml | ||
.idea/dataSources.local.xml | ||
.idea/sqlDataSources.xml | ||
.idea/dynamic.xml | ||
.idea/uiDesigner.xml | ||
|
||
# Gradle: | ||
.idea/gradle.xml | ||
.idea/libraries | ||
|
||
# Mongo Explorer plugin: | ||
.idea/mongoSettings.xml | ||
|
||
## File-based project format: | ||
*.iws | ||
|
||
## Plugin-specific files: | ||
|
||
# IntelliJ | ||
/out/ | ||
|
||
# mpeltonen/sbt-idea plugin | ||
.idea_modules/ | ||
|
||
# JIRA plugin | ||
atlassian-ide-plugin.xml | ||
|
||
# Crashlytics plugin (for Android Studio and IntelliJ) | ||
com_crashlytics_export_strings.xml | ||
crashlytics.properties | ||
crashlytics-build.properties | ||
fabric.properties | ||
|
||
### JetBrains Patch ### | ||
# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721 | ||
|
||
# *.iml | ||
# modules.xml | ||
# .idea/misc.xml | ||
# *.ipr | ||
|
||
|
||
### SublimeText ### | ||
# cache files for sublime text | ||
*.tmlanguage.cache | ||
*.tmPreferences.cache | ||
*.stTheme.cache | ||
|
||
# workspace files are user-specific | ||
*.sublime-workspace | ||
|
||
# project files should be checked into the repository, unless a significant | ||
# proportion of contributors will probably not be using SublimeText | ||
# *.sublime-project | ||
|
||
# sftp configuration file | ||
sftp-config.json | ||
|
||
# Package control specific files | ||
Package Control.last-run | ||
Package Control.ca-list | ||
Package Control.ca-bundle | ||
Package Control.system-ca-bundle | ||
Package Control.cache/ | ||
Package Control.ca-certs/ | ||
bh_unicode_properties.cache | ||
|
||
# Sublime-github package stores a github token in this file | ||
# https://packagecontrol.io/packages/sublime-github | ||
GitHub.sublime-settings | ||
|
||
|
||
### Vim ### | ||
# swap | ||
[._]*.s[a-w][a-z] | ||
[._]s[a-w][a-z] | ||
# session | ||
Session.vim | ||
# temporary | ||
.netrwhist | ||
*~ | ||
# auto-generated tag files | ||
tags | ||
|
||
### Pyc Files ### | ||
*.pyc | ||
|
||
.couscous/ | ||
doc/.couscous/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,23 @@ | ||
# vulture3-gui | ||
Vulture 3 Management GUI (Django project) | ||
|
||
# Vulture3 GUI | ||
|
||
Welcome on the [Vulture 3](https://www.vultureproject.org) project ! | ||
|
||
 | ||
|
||
## Overview | ||
|
||
Vulture3 is an Open Source HTTP `reverse-proxy`. It ensures the security of web applications facing the internet. <br/> | ||
Vulture3 is ready for HTTP/2 and IPv6. | ||
|
||
Basic features are: | ||
- Network firewall based on FreeBSD `pf` | ||
- Network TCP balancing based on `ha-proxy` | ||
- HTTP Proxy balancer based on `Apache` | ||
- User Authentication against LDAP/AD, Kerberos, SQL, Radius, ... | ||
- Web application firewall based on `ModSecurity` and `custom algorithms` | ||
- TLS endpoint, Content rewriting, and many other cool things... | ||
|
||
Vulture3 is build on top of FreeBSD, Apache, Redis and MongoDB. <br/> | ||
It is horizontaly scalable by-design (Vulture Cluster) and is manageable though a unique Web GUI. | ||
|
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
#from django.contrib import admin | ||
|
||
# Register your models here. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
# Create your models here. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
# Create your tests here. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,97 @@ | ||
from django.conf.urls import url | ||
|
||
from api.views.cluster import node_configuration, node_initialization, node_status, node_upgrade, node_version, \ | ||
update_replicalist, refresh_rc_conf, refresh_krb5_conf, refresh_portal_template_conf | ||
from api.views.logs import check_status, get as get_logs | ||
from api.views.network import up, down, running, start as net_start, stop as net_stop, reloadListener, need_restart, \ | ||
status as net_status, statusfull as net_statusfull | ||
from api.views.services import start, restart, stop, status, redis_master | ||
from api.views.supervision import process_info, system_time_info, realtime | ||
from api.views.application_rest_manager import get_all, generate, update, get_by_name, get_by_regex, delete, stats,\ | ||
get_all_apps, get_all_models | ||
from django.views.decorators.csrf import csrf_exempt | ||
|
||
from api.views.certs import write_ca, remove_ca, remove_cert | ||
from api.views.sso_profiles import SSOProfilesAPI | ||
from api.views.repositories import RepositoriesAPI | ||
|
||
urlpatterns = [ | ||
# Cluster routes | ||
url(r'^api/cluster/node/new/$', node_configuration, name="Cluster Management"), | ||
url(r'^api/cluster/node/init/$', node_initialization, name="Cluster Management"), | ||
url(r'^api/cluster/node/status/$', node_status, name="Cluster Management"), | ||
url(r'^api/cluster/node/version/$', node_version, name="Cluster Management"), | ||
url(r'^api/cluster/replica/update/$', update_replicalist, name="Cluster Management"), | ||
url(r'^api/cluster/management/conf/$', refresh_rc_conf, name="Cluster Management"), | ||
url(r'^api/cluster/management/conf/krb5/$', refresh_krb5_conf, name="Cluster Management"), | ||
url(r'^api/cluster/management/conf/portal_template/(?P<template_id>[A-Fa-f0-9]{24})/?$', | ||
refresh_portal_template_conf, name="Cluster Management"), | ||
url(r'^api/cluster/update/(?P<update_type>(?:engine)|(?:gui)|(?:libs))/?$', node_upgrade, | ||
name="Cluster Management"), | ||
|
||
# Service routes, | ||
url(r'^api/services/(?P<service_name>[a-z0-9]{2,6})/start/$', start, name="Services Management"), | ||
url(r'^api/services/(?P<service_name>[a-z0-9]{2,6})/restart/$', restart, name="Services Management"), | ||
url(r'^api/services/(?P<service_name>[a-z0-9]{2,6})/stop/$', stop, name="Services Management"), | ||
url(r'^api/services/(?P<service_name>[a-z0-9]{2,6})/status/$', status, name="Services Management"), | ||
url(r'^api/services/redis/master/$', redis_master, name="Services Management"), | ||
|
||
# Network routes | ||
url(r'^api/network/listener/(?P<inet_id>[A-Fa-f0-9]{24})/up/$', up, name="Network Management"), | ||
url(r'^api/network/listener/(?P<inet_id>[A-Fa-f0-9]{24})/down/$', down, name="Network Management"), | ||
url(r'^api/network/listener/running/(?P<listener_id>[A-Fa-f0-9]{24})/(?P<port>[0-9]+)$', running, | ||
name="Network Management"), | ||
url(r'^api/network/listener/start/(?P<listenaddress_id>[A-Fa-f0-9]{24})$', net_start, name="Network Management"), | ||
url(r'^api/network/listener/stop/(?P<listenaddress_id>[A-Fa-f0-9]{24})$', net_stop, name="Network Management"), | ||
url(r'^api/network/listener/reloadlistener/(?P<listenaddress_id>[A-Fa-f0-9]{24})$', reloadListener, | ||
name="Network Management"), | ||
url(r'^api/network/listener/needrestart/(?P<listenaddress_id>[A-Fa-f0-9]{24})$', need_restart, | ||
name="Network Management"), | ||
url(r'^api/network/listener/status/(?P<listenaddress_id>[A-Fa-f0-9]{24})$', net_status, name="Network Management"), | ||
url(r'^api/network/listener/statusfull/(?P<listenaddress_id>[A-Fa-f0-9]{24})$', net_statusfull, | ||
name="Network Management"), | ||
|
||
# Supervision routes | ||
url(r'^api/supervision/process/$', process_info, name="Supervision"), | ||
url(r'^api/supervision/system_time/$', system_time_info, name="Supervision"), | ||
url(r'^api/supervision/realtime/$', realtime, name="Supervision"), | ||
|
||
# Log management routes | ||
url(r'^api/logs/management/$', check_status, name="Log management"), | ||
url(r'^api/logs/get/$', get_logs, name="Log management"), | ||
|
||
# Certificates routes | ||
url(r'api/certs/write_ca/(?P<cert_id>[A-Fa-f0-9]{24})$', write_ca, name="Certificates Management"), | ||
url(r'api/certs/remove_ca/(?P<cert_id>[A-Fa-f0-9]{24})$', remove_ca, name="Certificates Management"), | ||
url(r'api/certs/remove/(?P<cert_id>[A-Fa-f0-9]{24})$', remove_cert, name="Certificates Management"), | ||
|
||
# REST API - Application handling - <ROOT>/api/rest/app/<OPERATION>/<OPTIONS>/ ##################################### | ||
# REST API - Application handling - Listing apps | ||
url(r'^api/rest/app/list/all/$', get_all, name='Application listing'), | ||
url(r'^api/rest/app/list/all/(?P<fields>[|\w]*)/$', get_all, name='Application listing'), | ||
url(r'^api/rest/app/list/application/$', get_all_apps, name='Application listing'), | ||
url(r'^api/rest/app/list/application/(?P<fields>[|\w]*)/$', get_all_apps, name='Application listing'), | ||
url(r'^api/rest/app/list/model/$', get_all_models, name='Application listing'), | ||
url(r'^api/rest/app/list/model/(?P<fields>[|\w]*)/$', get_all_models, name='Application listing'), | ||
|
||
# REST API - Application handling - Listing an app | ||
url(r'^api/rest/app/list/name/(?P<app_name>[\w #]*)/$', get_by_name, name='Application getter by name'), | ||
url(r'^api/rest/app/list/regex/(?P<regex>[\w #]*)/$', get_by_regex, name='Application getter by REGEX'), | ||
url(r'^api/rest/app/list/name/(?P<app_name>[\w #]*)/(?P<fields>[|\w]*)/$', get_by_name, | ||
name='Application getter by name'), | ||
url(r'^api/rest/app/list/regex/(?P<regex>[\w #]*)/(?P<fields>[|\w]*)/$', get_by_regex, | ||
name='Application getter by REGEX'), | ||
|
||
# REST API - Application handling - Generate / Update an app | ||
url(r'^api/rest/app/generate/$', generate, name='Application generation'), | ||
url(r'^api/rest/app/generate/(?P<is_reload>reload)/$', generate, name='Application generation'), | ||
url(r'^api/rest/app/update/(?P<app_name>[\w #]*)/$', update, name='Application updating'), | ||
url(r'^api/rest/app/delete/(?P<app_name>[\w #]*)/$', delete, name='Application deletion'), | ||
|
||
# REST API - Application handling - Stats & various | ||
url(r'^api/rest/app/stats/$', stats, name='Number of applications'), | ||
|
||
# REST API - SSO Profiles management | ||
url(r'^api/rest/sso_profiles/(?P<app_id>[A-Fa-f0-9]{24})(/?|/(?P<login>.+))$', csrf_exempt(SSOProfilesAPI.as_view()), name='SSO Profiles'), | ||
url(r'^api/rest/users/(?P<repo_id>[A-Fa-f0-9]{24})(/?|/(?P<login>.+))$', csrf_exempt(RepositoriesAPI.as_view()), name='SSO Profiles'), | ||
] |
Empty file.
Oops, something went wrong.