|
|
4 jaren geleden | |
|---|---|---|
| .github | 5 jaren geleden | |
| vycontrol | 4 jaren geleden | |
| .dockerignore | 5 jaren geleden | |
| .gitignore | 4 jaren geleden | |
| Dockerfile | 4 jaren geleden | |
| LICENSE | 5 jaren geleden | |
| README.md | 4 jaren geleden | |
| docker-compose.yml | 4 jaren geleden | |
| requirements.txt | 4 jaren geleden |
VyControl is web frontend interface to manage a single or multiple VyoS servers. It is developed in Python/Django using VyOS API.
VyControl can be a web gui for one single VyOS installation, but it requires a separeted webserver from VyOS to a single network admin user or a TI department from a company
VyControl can be a web gui for multiple VyOS installation in a same enterprise, to a single network admin user or a TI department from a company
VyControl can be a web gui for multiple VyOS installation in a datacenter. Each of datacenter customer have a VyControl user to manage their own VyOSes (each user can manage several VyOS).
latest VyControl is being autobuilt at dockerhub https://hub.docker.com/r/robertoberto/vycontrol
your configuration will be mounted on Docker to /etc/vycontrol/production.py
mkdir /etc/vycontrol
cd /etc/vycontrol
wget https://raw.githubusercontent.com/vycontrol/vycontrol/master/vycontrol/vycontrol/settings/production.py
````
now edit production.py:
* ALLOWED_HOSTS currently 127.0.0.1 is ok for tests
* for tests you don't need to edit EMAIL settings, but forget password will not work
* sqlite is ok for tests, but you can change to MySQL/PostgreSQL.
* SECRET_KEY edit to anything random, you can use openssl for example:
openssl rand -hex 32
now download latest docker image:
docker pull robertoberto/vycontrol
run docker:
docker run -p 8000:8000 -t robertoberto/vycontrol
now you can access http://127.0.0.1:8000
## by docker composer
Right now we are using db.sqlite3, you can edit composer and to change to mySQL/PostgreSQL if needed.
docker-compose build docker-compose up
## manual install instructions
### setup virtual env and pip requirements
virtualenv env source env/bin/activate pip3 install -r requirements.txt
### setup initial database
source env/bin/activate cd vycontrol python3 manage.py migrate --settings=vycontrol.settings_available.production
### run webserver
source env/bin/activate cd vycontrol python3 manage.py runserver --settings=vycontrol.settings_available.production 0.0.0.0:8000
## access webpage
http://127.0.0.1:8000/
## setup vyos new instance
* click on *Add new instance*
* configure vyos services like explained here https://docs.vyos.io/
* click on *List Instances*
* click on *Test Connection*
## setup email provider
VyControl send email to users when they click on Forget Password. So you need to setup a email provider to be able to use this features.
* edit vycontrol/settings/production.py
* change according your mail provider, you can use gmail accounts, sendergrid, amazon ses, mailgun etc
EMAIL_HOST = 'email-smtp.us-east-1.amazonaws.com' EMAIL_PORT = 587 EMAIL_HOST_USER = 'user' EMAIL_HOST_PASSWORD = 'password' EMAIL_USE_TLS = True ```