Files
ctf/README.md
Jan Groß 0838a0a5ce CTF Platform API basic auth
Addded ctf platform Flask app with basic auth functions
register, login, logout
Added ctf platform database design (MySQL Workbench)
Added forward engineered SQL file
Added wsgi startup script
Installed various python dependencies
README.md Updated
.gitignore Updated
2018-07-14 20:55:46 +02:00

29 lines
987 B
Markdown

# Minzkrauts home-made CTF
## Requirements
- NGINX
- Python, Virtualenv
Create and use python Virtualenv with Python 3
`virtualenv -p python3 venv`
`source venv/bin/activate`
Install all Python requirements with
`pip install -r requirements.txt`
Move all NGINX configs to /etc/nginx/sites-avaliable and activate/symlink them.
## Platform API
Navigate into `ctf_platform`.
Run `flask init-db` to initialize the database if neccessary.
Start the Flask app with gunicorn using `./start_api.sh`
The API server will be listening on port `4910`
Configure NGINX reverse proxy to point at `http://127.0.0.1:4910`
## Letsencrypt certificates
Navigate to certbot location and create certificate files with
```
sudo ./certbot-auto certonly --webroot -w var/www/html -d ctf.minzkraut.com --non-interactive --agree-tos --email {email}
```
Renew certificates and reload nginx with
```
sudo ./certbot-auto renew --webroot -w /var/www/html --post-hook "service nginx reload"
```