从0搭建一个本地CTF靶场,零基础入门到精通,看这篇就够了!赶紧收藏!

从0搭建一个本地CTF靶场

我们平时大部分练习的CTF靶场都是别人的平台的,所以想着自己搭一个来玩玩,用的是CTFd框架,因为网上的教程也比较多,这次搭建也是比较顺利的,记录一下。

**
**

前期准备:

  • centos7.x系统的虚拟机
  • docker 下载
  • docker-compose 下载
  • git 的下载
  • CTFd 下载
  • CTFTraining 题库下载
  • CTFd 汉化

一、创建虚拟机:

图片

图片

图片

选择镜像(需提前下载)

。。。。。。。。。。。。。

图片

我装的是带桌面的界面 友好点 (菜)

二、docker安装

下载之前更新一下python版本:

<------更新python版本------>wget https://www.python.org/ftp/python/3.9.7/Python-3.9.7.tgz  #下载最新版,自行查看tar -xzvf Python-3.9.7.tgz  #解压cd Python-3.9.7  #进入解压后的目录mkdir /usr/bin/python3  #创建一个python3目录./configure --prefix=/usr/bin/python3  #指定路径make  #编译make install  #安装mv /usr/bin/python /usr/bin/python_old2  #重命名旧版本python以免覆盖ln -s /usr/bin/python3/bin/python3 /usr/bin/python  #建立新版本软连接python -V  #成功修改默认python为Python-3.9.7
<------修改pip3------>vim ~/.bash_profile  #修改pip3指定路径里面有一行修改为:PATH=$PATH:$HOME/bin:/usr/bin/python3/binsource ~/.bash_profile  #刷新配置即可
<------修改yum------>


1.更新yum包

yum update  #更新前检查网络是否正常连接


2.安装必要的系统工具

yum install -y yum-utils device-mapper-persistent-data lvm2


3.设置yum源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo


4.查看并选择合适的docker版本

yum list docker-ce --showduplicates | sort -r


5.下载docker

yum install docker-ce-17.12.1.ce


6.Docker镜像源加速

cd /etcmkir docker  #创建docker目录,因为我这里etc目录下没有所以要手动创建vim docker/daemon.json  #创建并编辑docker目录下的daemon.json文件#编辑内容为:{"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]}systemctl restart docker.service  #重启docker生效


三、docker-compose安装

1.选择安装最新的docker-compose版本

curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose


2.设置docker-compose执行权限

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


**四、git配置和安装

**

1.查看git版本

git --version  #查看当前版本,通常默认是1.8.3,但是太老了


2.卸载旧版本git

yum remove git


3.安装最新版git

wget https://github.com/git/git/archive/v2.33.0.tar.gz  #可以先自行去看看最新版本是多少


4.进入解压后的git安装目录

cd git-2.33.0


5.编译

make prefix=/usr/bin/git all  #编译正常可以跳过下面报错处理


PS:在使用命令 make 重新编译 Git 的某些源文件时,你可能会遇到以下这些错误:
错误 1 - FATAL ERROR: OPENSSL/SSL.H: NO SUCH FILE OR DIRECTORY

图片

这是缺少openssl-devel导致的,执行命令 yum install --assumeyes openssl-devel 安装即可。

错误 2 - FATAL ERROR: CURL/CURL.H: NO SUCH FILE OR DIRECTORY

图片

这是缺少curl-devel导致的,执行命令yum install --assumeyes curl-devel 安装即可。

错误 3 - FATAL ERROR: EXPAT.H: NO SUCH FILE OR DIRECTORY

图片

这是缺少expat-devel导致的,执行命令 yum install --assumeyes expat-devel 安装即可。

6.编译成功,安装Git至/usr/bin/git路径

make prefix=/usr/bin/git install


7.编辑环境变量配置

vim /etc/profile


8.profile文件末尾追加

export PATH=$PATH:/usr/bin/git/bin


9.刷新配置

source /etc/profile


10.查看git版本

git --version  #修改成功


五、CTFd下载和部署

**CTFd 是一款基于 flask 的 CTF 靶场框架,主要包含了用户界面部分和管理员界面部分。项目地址:**https://github.com/CTFd/CTFd

1.下载CTFd

git clone https://github.com/CTFd/CTFd.git


2.进入目录使用docker-compose 启动项目

cd CTFddocker-compose up -d


3.等待他安装完(可能时间有点久耐心等待一下)依赖启动之后,访问 http://127.0.0.1 (ip 改成自己的服务器地址)出现类似下面这个界面,然后填写一些基本信息,一直Next…

图片

六、下载部署CTFd题目

github 上有许多 CTF 题库的开源仓库,但有些整理的未必好,为了遵守容易部署的原则,我选择了 CTFTraining:https://github.com/CTFTraining/CTFTraining 其题库较为详细,并且目录结构清晰,关键是都是通过 docker 编排,完全契合我的环境。

1.下载 CTFTraining 中的题库,这里要注意 CTFTraining 整个项目较大,题目建议一个个下,有选择性的拉取,下面以拉取第一个题目为例

mkdir CTFTrainingcd CTFTraininggit clone https://github.com/CTFTraining/0ctf_2016_unserialize.git


2.修改 docker-compose.yml 文件

cd 0ctf_2016_unserializevim docker-compose.yml# 0ctf_2016_unserializeversion: "2"services:  web:    build: .    image: ctftraining/0ctf_2016_unserialize    environment:      - FLAG=flag{test_flag}    restart: always    ports:      - "127.0.0.1:8302:80"


此处需要修改两个地方:一个是 flag 的值,写一个自己喜欢的字符串即可,另一个地方是下面的地址和端口号,地址改为 0.0.0.0 端口号选一个未被占用的即可。因为0.0.0.0可以给本地局域网机器访问。

3.启动该题目

docker-compose up -d


4.访问和配置 CTFd 的 Challenge访问 htto://127.0.0.1:8302 (此处改成自己的 ip 和端口号),成功能显示页面即可。进入刚刚搭建好的 CTFd 中 Admin->Challenges,添加一个新的挑战,类型选 standard,填写好题目名字、内容和分值等。

图片

图片

图片

七、汉化CTFd

1.下载汉化包

git clone https://github.com/Gu-f/CTFd_chinese_CN.git


2.替换themes

将CTFd/CTFd/themes的themes文件删除,再移动汉化版本thems到CTFd/CTFd/目录下即可。

3.替换好的效果如下:

图片

网络安全学习资源分享:

给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包,需要点击下方链接即可前往获取

读者福利 | 优快云大礼包:《网络安全入门&进阶学习资源包》免费分享 (安全链接,放心点击)

👉1.成长路线图&学习规划👈

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

在这里插入图片描述
在这里插入图片描述

👉2.网安入门到进阶视频教程👈

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。(全套教程文末领取哈)
在这里插入图片描述

在这里插入图片描述

👉3.SRC&黑客文档👈

大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录

SRC技术文籍:

在这里插入图片描述

黑客资料由于是敏感资源,这里不能直接展示哦!(全套教程文末领取哈)

👉4.护网行动资料👈

其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!

在这里插入图片描述

👉5.黑客必读书单👈

在这里插入图片描述

👉6.网络安全岗面试题合集👈

当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。
在这里插入图片描述
所有资料共282G,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,可以扫描下方二维码或链接免费领取~

读者福利 | 优快云大礼包:《网络安全入门&进阶学习资源包》免费分享 (安全链接,放心点击)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值