1.前言
有手就行 centos7.6 ctfd ctfd-whale搭建
这里使用 frankli0324 师傅 fork 后修改赵师傅 ctfd whale 的版本进行搭建,参考VaalaCat师傅的教程。
2.部署
2.1更新软件
yum -y update
yum -y install python3-pip git
2.2安装docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
验证安装
docker --version
启动docker并设置开机启动
systemctl start docker
systemctl enable docker
2.3安装docker-compose
sudo pip3 install docker-compose -i https://pypi.tuna.tsinghua.edu.cn/simple
不出意外的话还是出意外了,会出现下面的这关报错
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-tbpoag4e/bcrypt/
解决方法
pip3 install --upgrade pip
验证安装
docker-compose --version
2.4Docker Hub加速(可选)
DaoCloud:https://www.daocloud.io/mirror
阿里云容器镜像服务(使用自己的阿里云账户申请):https://cr.console.aliyun.com/#/accelerator
网易:https://hub-mirror.c.163.com/
我这里使用的是阿里云的镜像加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
2.5配置环境
docker swarm init
将这个服务器加入集群
docker node update --label-add='name=linux-1' $(docker node ls -q)
3.安装
3.1下载CTFd
git clone https://github.com/Un1kTeam/CTFd --depth=1
3.2配置
cd CTFd
# token 自己看着基本只需要修改 token
vim conf/frp/frps.ini
vim conf/frp/frpc.ini
frps.ini
[common]
bind_port = 7000
vhost_http_port = 9123
token = your_token
subdomain_host = ctf.n1l.cn
frpc.ini
[common]
token = your_token
server_addr = 172.1.0.3
server_port = 7000
admin_addr = 172.1.0.4
admin_port = 7400
3.3安装插件
git submodule update --init
3.4docker-compose
这里是访问ctfd的端口跟一根据自己的需要修改默认是9124
这里是映射direct类型题目的端口也可以根据自己的需求修改
3.5部署容器
docker-compose up -d
等待完成就好了
在安装过程中可能会出现下面这样的错误
ERROR: The Compose file './docker-compose.yml' is invalid because:
networks.frp_connect value Additional properties are not allowed ('attachable' was unexpected)
networks.frp_containers value Additional properties are not allowed ('attachable' was unexpected)
只要注释掉attachable就可以
修改完后重新部署容器
docker-compose up -d
3.6查看一下容器是否都正常
docker ps -a
4.平台设置
这里填写使用http方式访问靶机的泛解析域名
这里填写frps中的vhost_http_port,该端口为http方式靶机访问的端口
这里填写服务器ip,用于显示Direct方式访问的题目的IP
这里填写用于动态靶机Direct方式的开始端口
这里填写结束端口
4 条评论
不错不错,我喜欢看 https://www.ea55.com/
想想你的文章写的特别好https://www.237fa.com/
叼茂SEO.bfbikes.com
看的我热血沸腾啊