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 -suname -m

image.png

选择对应的文件下载

https://github.com/docker/compose/releases

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

mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose

image.png

赋予执行权限

sudo chmod +x /usr/local/bin/docker-compose

image.png

创建软连接

sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

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

docker --versiondocker-compose --version

image.png

搭建CTFd平台

# 创建一个文件夹CTFd
mkdir CTFdcd CTFd# 下载CTFd
git clone https://github.com/CTFd/CTFd.gitcd CTFd# docker方式后台下载镜像源并启动
docker-compose up -d# 查看容器
docker ps

image.png

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

http://192.168.61.137:8000http://192.168.61.137:80

docker开机自启动

systemctl enable docker

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

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

image.png
image.png
image.png
image.png

部署CTF题目

使用CTFTraining题库进行演示

# 创建CTF目录
mkdir CTFtmcd CTFtm#安装CTFTraining
sudo git clone https://github.com/CTFTraining/CTFTraining.gitcd CTFTrainingls

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

下载CTF题目,以0ctf_2016_unserialize为例

sudo git clone https://github.com/CTFTraining/0ctf_2016_unserialize.git# 进入题目目录中
cd 0ctf_2016_unserialize/ls

image.png

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

vim docker-compose.yml

image.png

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

docker-compose up -d# 查看docker
docker ps

image.png

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

CTFd平台创建题目

点击Admin Panel进入管理配置界面
image.png
选择challenges添加一个挑战
image.png
选择standard,依次填写题目信息,点击create创建
image.png
配置相关信息,点击finish完成
image.png

回到首页,点击challenges就能看见刚才创建的题目image.png
点击即可看到题目链接
image.png
image.png

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/324638.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二叉搜索树模拟实现

目录 认识二叉搜索树: 模拟实现: 节点结构体构建: insert(插入): find(查找): erase(删除)(重点): 全部代码 认识二叉…

第十一讲:指针(3)

第十一讲:指针(3) 1.字符指针变量1.1存储一个字符1.2存储一个字符串1.3一个有趣的面试题 2.数组指针变量2.1什么是数组指针变量2.2数组指针变量的初始化 3.二维数组传参的本质4.函数指针变量4.1介绍函数指针变量4.2 两段有趣的代码4.2.1代码1…

内容安全(AV)

防病毒网关(AV)简介 基于网络侧 识别 病毒文件,工作范围2~7层。这里的网关指的是内网和外网之间的一个关口,在此进行病毒的查杀。在深信服中就有一个EDR设备,该设备就是有两种部署,一个部署在网关&#xf…

Java----数组的定义和使用

1.数组的定义 在Java中,数组是一种相同数据类型的集合。数组在内存中是一段连续的空间。 2.数组的创建和初始化 2.1数组的创建 在Java中,数组创建的形式与C语言又所不同。 Java中数组创建的形式 T[] 数组名 new T[N]; 1.T表示数组存放的数据类型…

FPGA学习笔记(1)——Vivado和HLS

1 Vivado设计 1.1 FPGA基本知识 Xilinx Atrix-7使用6输入LUT结构(0-63)CLB:可配置逻辑块Slice:每个CLB包含2个Slice(包含查找表LUT和8位寄存器REG)布线池:围绕在CLB周围,衔接FPGA的资源调度I/O块&#xf…

vivado Spartan-7 配置存储器器件

下表所示闪存器件支持通过 Vivado 软件对 Spartan -7 器件执行擦除、空白检查、编程和验证等配置操作。 本附录中的表格所列赛灵思系列非易失性存储器将不断保持更新 , 并支持通过 Vivado 软件对其中所列非易失性存储器 进行擦除、空白检查、编程和验证。赛灵…

带EXCEL附件邮件发送相关代码

1.查看生成的邮件 2.1 非面向对象的方式(demo直接copy即可) ​ REPORT Z12. DATA: IT_DOCUMENT_DATA TYPE SODOCCHGI1,IT_CONTENT_TEXT TYPE STANDARD TABLE OF SOLISTI1 WITH HEADER LINE,IT_PACKING_LIST TYPE TABLE OF SOPCKLSTI1 WITH HEADER LIN…

在做题中学习(57):寻找数组的中心下标

724. 寻找数组的中心下标 - 力扣(LeetCode) 解法:前缀和后缀和 思路:要看一个数是不是中心下标,就看他前面数的和 与 后面数的和 相不相等。 1.i前面数的和,是[0,i-1] 的前缀和,i后面数的和&am…

快递物流查询:如何实现快递批量查询?这些技巧助你轻松应对

在日常生活和工作中,我们经常需要查询快递物流信息,尤其是当面对大量的快递包裹时,逐一查询无疑会耗费大量的时间和精力。这时,实现快递批量查询就显得尤为重要。本文将为你介绍办公提效工具一些实现快递批量查询的技巧&#xff0…

国内有哪些知名的网络安全厂商?

首先就是360,这个我相信大家并不陌生了吧,你的电脑装过360么? 360在个人终端服务那是妥妥的扛把子,但是在企业服务里虽然有他们的身影却略显不足。 第二个就是深信服,网络安全的老牌大佬,业务覆盖了全球5…

【数据分析】 JupyterNotebook安装及使用简介

各位大佬好 ,这里是阿川的博客 , 祝您变得更强 个人主页:在线OJ的阿川 大佬的支持和鼓励,将是我成长路上最大的动力 阿川水平有限,如有错误,欢迎大佬指正 在数据分析中,一般用Pycharm编辑代…

18 分页:介绍

目录 简单例子 页表存在哪里 列表中究竟有什么 分页:也很慢 内存追踪 小结 在解决大多数空间管理问题上面,操作系统有两种方法: 第一种就是将空间分割成不同长度的分片,类似于虚拟内存管理中的分段,但是这个方法…

MySQL45讲(一)(40)

回顾binlog_formatstatement STATEMENT 记录SQL语句。日志文件小,节约IO,但是对一些系统函数不能准确复制或不能复制,如now()、uuid()等 在RR隔离级别下,binlog_formatstatement 如果执行insert select from 这条语句是对于一张…

win10禁止自动更新的终极方法

添加注册表值 1.运行,输入regedit 2.打开注册表编辑器依次进入以下路径“计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings”。 3.在Settings项中,新建DWORD(32位)值(D),重命名为以下命名“Fl…

vuex核心概念-getters

除了state之外,有时我们还需要从state中派生出一些状态,这些状态是依赖state的,此时会用到getters。

2023版brupsuite专业破解安装

安装教程,分两部分: 1、安装java环境、参考链接JAVA安装配置----最详细的教程(测试木头人)_java安装教程详细-CSDN博客 2、安装2023.4版本brupsuite:参考链接 2023最新版—Brup_Suite安装配置----最详细的教程&…

实体同城商家短视频获客,3天直播课,玩转实体商家私域,引爆门店增长

课程内容: 实体同城3天直播课【资料】 实体商家获客第一天 .mp4 实体商家获客第二天上.mp4 实体商家获客第二天,mp4 实体商家获客第三天.mp4 实体商家获客第4天.mp4 网盘自动获取 链接:https://pan.baidu.com/s/1lpzKPim76qettahxvxtjaQ?pwd0b8x…

数据结构----二叉树

博主主页: 码农派大星. 关注博主带你了解更多数据结构知识 1. 树型结构 1.1 概念 树是一种非线性的数据结构,它是由n(n>0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上…

对Windows超融合S2D的一些补充

先说一个不知道算不算BUG的例子,下面这个存储池是用两台服务器各2块10G建立的,除去系统保留的部分,显示还有13G可用。 但如果使用其新建虚拟磁盘会显示可用的空间为0 然后我又各增加了一块10G硬盘进池,变成了可用空间为30.5GB …

如何理解VMware中的网络模式(NAT、桥接、仅主机)

目录 Ⅰ.NAT模式 Ⅱ.仅主机模式 Ⅲ.桥接模式 Ⅰ.NAT模式 NAT模式:将物理机的网卡作为虚拟交换机的上线链路,将vmware的私有网络转成可以上网的地址进行网络访问,因此在NAT模式下虚拟机是可以访问外部网络的(图一) …