アウトライン
CTFdは CTF Apache2.0のプロトコルベースのオープン・ソース・プラットフォームである、最新バージョンは現在、1.20です。プラットフォームは、同時に、プラットフォームが提供し、基本的にCTFコンテストの現在のニーズを満たすことができ、強力でパワフルなプラグイン機能、その機能を実現するために開発中のプラグイン自身のを行うことができます。
インストール
一般的なインストール
CTFでウィキhttps://github.com/CTFd/CTFd/wiki/Getting-Startedは、詳細なインストール手順を書きました。
具体命令
# 克隆库
git clone https://github.com/CTFd/CTFd.git
cd CTFd/
# 安装操作系统需要安装的包
./prepare.sh
# 安装python需要的包
pip install -r requirements.txt
# 运行CTFd
python serve.py
virtualenvのは、仮想Pythonライブラリを構築し、推奨、または彼らは、複数の依存関係を引き起こす可能性があります。
ドッキングウィンドウのインストール
git clone https://github.com/CTFd/CTFd.git
cd CTFd/
docker-compose up
リンクをたどっます。http:// localhostを:8000に
コンフィギュレーション
CTFdでの初期設定では変更せずに直接使用することができますが、私は、リレーショナルデータベースのMySQLの設定ファイルを使用するように変更する必要があります。CTFdのルートディレクトリにCTFd / config.pyのプロファイルを作成します。
データベースの設定を変更します
#SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL') or 'sqlite:///{}/ctfd.db'.format(os.path.dirname(os.path.abspath(__file__)))
SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:123456@localhost:3306/ctfd'
あなたはRedisのを有効にする必要がある場合は、修正
class TestingConfig(Config):
SECRET_KEY = 'AAAAAA'
PRESERVE_CONTEXT_ON_EXCEPTION = False
TESTING = True
DEBUG = True
SQLALCHEMY_DATABASE_URI = os.environ.get('TESTING_DATABASE_URL') or 'sqlite://'
SERVER_NAME = 'localhost'
UPDATE_CHECK = False
CACHE_REDIS_URL = None
CACHE_TYPE = 'simple'
でCACHE_REDIS_URL
、それは変更することが最善である一方、Redisの接続に、SECRET_KEY
それを行うには一意の値を、私は暴力を防止する問題のいくつかを推測します。
使用効果