0838a0a5ce7e76aa033d3b3c5853dec2c6ae8b52
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
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"
Description
Languages
JavaScript
60.8%
Python
15.4%
HTML
13.3%
PHP
4.6%
C++
2.4%
Other
3.5%