Welcome to YATB Docs
YATB - yet another fast and furious jeopardy-CTF taskboard
Features out-of-the-box
- Flexible auth system with OAuth2 support
- Flexible flags and scoring system
- OpenAPI schema and swagger UI - easy to integrate API
- Extremly simple: you can modificate in any imagniable way
- Telegram notifications for first blood
- Blazing :) fast!
How to start
- Clone repo
- Fix event datetime:
- Open app/config.py, setup
EVENT_START_TIMEandEVENT_END_TIME. Theese dates MUST be in UTC. - or in
yatb.env.
- Open app/config.py, setup
- Copy
yatb.example.envtoyatb.env, change next values:- tokens:
1.
JWT_SECRET_KEY- secret key for JWT cookie sign 2.API_TOKEN- token for automated usage of admin API 3.WS_API_TOKEN- token for admin WS 4.FLAG_SIGN_KEY- flag sign key FLAG_BASE- flag base (part before brackets), i.e. for flagkks{example_flag}flag base iskks.CTF_NAME- CTF name for frontend- Setup auth ways:
1. Fill
ENABLED_AUTH_WAYSlist with enabled auth ways, for example,ENABLED_AUTH_WAYS='["TelegramAuth", "SimpleAuth"]'2. Fill select auth way settings. For reference, see more about auth ways configs - More about config
- tokens:
1.
- Change logos in app/view/static
docker-compose up -d --build- If you setup any reverse proxy before YATB nginx, you should change
proxy_set_header X-Forwarded-Proto $scheme;line in nginx/yatb.conf: comment entire line or replace$scheme;withhttps.