安装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