关于环境

目前 ctfd 依赖于 python3.7.8,不兼容 py3.6和3.8,需要自己编译

  • 本教程 依赖于 ubuntu20.04x64
  • 编写于:2020_08_07

0x1 准备python环境

  • 首先需要安装 目标版本的python
  • 这里直接给一个编译好的版本
# 安装python
dpkg -i python_3.7.8-1_amd64.deb
# 连接到系统
ln -s $(which python3) /bin/python
ln -s $(which pip3) /bin/pip

0x2 安装ctfd

首先下载源码

apt install git -y
cd /opt
mkdir -p /opt/CTFd /var/log/CTFd /var/uploads
git clone https://github.com/CTFd/CTFd
cd CTFd

接着然后运行脚本prepare.sh来安装python依赖

./prepare.sh

这里创建一个用户,设置用户禁止登陆,用于 降权运行 ctfd

adduser \
--disabled-login \
-u 1001 \
--gecos "" \
--shell /bin/bash \
ctfd

接着创建缓存目录

chmod +x /opt/CTFd/docker-entrypoint.sh
hown -R 1001:1001 /opt/CTFd /var/log/CTFd /var/uploads

0x3 启动 ctf

使用以下脚本来手动启动ctfd

cd /opt/CTFd
#不建议 root启动
#./docker-entrypoint.sh

# 建议使用 降权运行
su ctfd -c ./docker-entrypoint.sh

0x4 汉化

cd /opt/CTFd
apt install unzip -y
wget https://github.com/ht0Ruial/CTFd_themes_Chinese/archive/3.0.0.zip
unzip 3.0.0.zip
cp -r CTFd_themes_Chinese-3.0.0/themes CTFd/
cp -r CTFd_themes_Chinese-3.0.0/plugins CTFd/
rm -rf 3.0.0.zip CTFd_themes_Chinese-3.0.0

0x5 关于插件

评论可见python安装包

此处内容需要评论回复后(审核通过)方可阅读。

Last modification:August 7, 2020
如果觉得我的文章对你有用,请随意赞赏