Docker搭建ctfd平台

安装docker和docker-compose

(1)安装docker:

复制代码
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

(2)安装 Docker Compose:

复制代码
yum install docker-compose

安装失败参考下面文章

复制代码
https://www.cnblogs.com/goloving/p/16253880.html

解决步骤

先看自己的系统和架构

复制代码
uname -s

uname -m

选择对应的文件下载

复制代码
https://github.com/docker/compose/releases

下载完成后,上传至服务器,移动到 /usr/local/bin 下

复制代码
mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose

赋予执行权限

复制代码
sudo chmod +x /usr/local/bin/docker-compose

创建软连接

复制代码
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

(3)验证一下是否安装成功:

复制代码
docker --version

docker-compose --version

搭建CTFd平台

复制代码
# 创建一个文件夹CTFd
mkdir CTFd


cd CTFd


# 下载CTFd
git clone https://github.com/CTFd/CTFd.git


cd CTFd


# docker方式后台下载镜像源并启动
docker-compose up -d


# 查看容器
docker ps

此时,CTFd平台已经搭建完成,访问一下80、8000端口均可访问CTFd平台

复制代码
http://192.168.61.137:8000

http://192.168.61.137:80

docker开机自启动

复制代码
systemctl enable docker

完成一系列设置,点finish进入CTFd平台



复制代码
用户名:m7
管理员电子邮件:m7m7@qq.com
管理员密码:m7m7m7




部署CTF题目

使用CTFTraining题库进行演示

复制代码
# 创建CTF目录
mkdir CTFtm


cd CTFtm


#安装CTFTraining
sudo git clone https://github.com/CTFTraining/CTFTraining.git


cd CTFTraining


ls

注意:这里只能git下来目录,目录中是空的,需要一个一个CTF题目去git

下载CTF题目,以0ctf_2016_unserialize为例

复制代码
sudo git clone https://github.com/CTFTraining/0ctf_2016_unserialize.git


# 进入题目目录中
cd 0ctf_2016_unserialize/

ls

编辑docker-compose.yml文件,设置端口及flag:

复制代码
vim docker-compose.yml

使用docker-compose下载镜像生成容器并启动容器:

复制代码
docker-compose up -d

# 查看docker
docker ps

在页面输入ip:8302即可本地访问

CTFd平台创建题目

点击Admin Panel进入管理配置界面

选择challenges添加一个挑战

选择standard,依次填写题目信息,点击create创建

配置相关信息,点击finish完成

回到首页,点击challenges就能看见刚才创建的题目

点击即可看到题目链接

CTF题库

近年ctf writeup大全

复制代码
https://github.com/ctfs/write-ups-2016
https://github.com/ctfs/write-ups-2015
https://github.com/ctfs/write-ups-2014
fbctf竞赛平台Demo
https://github.com/facebook/fbctf
ctf Resources
https://github.com/ctfs/resources
相关推荐
IT大白鼠5 小时前
彭大帅的AI运维助手——怎么给AI写运维SOP:提示词设计实战
运维·人工智能·彭大帅
Canmag 兴隆磁性12 小时前
中大型钕铁硼产品的磁通测量与自动分选:一条产线自动化的工程实现思路
运维·学习·自动化·永磁材料
xuefeiniao14 小时前
PHP2Shell漏洞修复
运维·服务器·php
水饺编程15 小时前
第2章:Linux 基础,切换到超级用户
linux·c语言·汇编
便利店102415 小时前
系统活动一抓留存!深入 Linux C/C++ 调试工具之 sysdig
linux·运维·服务器·sysdig
qetfw16 小时前
Bash 变量:export、位置参数与默认值展开验证
linux·开发语言·chrome·bash
智能运维指南16 小时前
企业 IT 运维自动化平台怎么选?从场景匹配到 POC 验证的完整评估框架
运维·自动化·自动化运维·嘉为蓝鲸
其实防守也摸鱼17 小时前
Cylab在线靶场——CTF中的通用技能
linux·数据库·学习·算法·靶场·ctf·学习网络安全
小马同学-17 小时前
K8s 控制器详解 — Deployment、ReplicaSet、DaemonSet 与 Job
云原生·容器·kubernetes
TTATTC17 小时前
单体应用如何支撑千所机构独立测评?拆解 sg-exam 行级多租户隔离与动态组卷内核
docker·开源