虚拟机内搭建CTFd平台搭建及CTF题库部署,局域网内机器可以访问

2023-11-13

一、虚拟机环境搭建

1、安装docker、git、docker-compose

ubuntu:

sudo apt-get update #更新系统
sudo apt-get -y install docker.io #安装docker
sudo apt-get -y install git #安装git
sudo apt-get -y install python3-pip #安装pip3
sudo pip install docker-compose #pip安装docker-compose,如安装失败sudo pip install --upgrade pip更新pip版本后再安装

2、docker配置&python配置

docker配置:

#如果想自定义docker镜像下载目录进行执行如下命令
sudo rm -rf /var/lib/docker
sudo mkdir -p /appdata/docker #/appdata/docker为你自定义的目录
sudo ln -s /appdata/docker /var/lib/docker #创建软链接使/var/lib/docker指向/appdata/docker
#设置国内docker镜像源
sudo mkdir -p /etc/docker #创建目录
sudo vim /etc/docker/daemon.json #编辑配置文件
#将如下内容写入:
{
"registry-mirrors": ["https://******.mirror.aliyuncs.com"]
}
#******为你注册阿里docker镜像仓库的代码,获取方式见如下文章:
#https://blog.csdn.net/wohaqiyi/article/details/89335932
sudo service docker restart #重启docker

python配置:

#不安装python2,直接python3
sudo ln -s /usr/bin/pip3 /usr/bin/pip #创建python3软链接
sudo ln -s /usr/bin/python3 /usr/bin/python #创建python3软链接
 

3、部署CTFd平台

cd /opt
sudo git clone https://github.com/CTFd/CTFd.git #下载CTFd
cd CTFd
sudo docker-compose up -d #docker方式后台下载镜像源并启动
 
[root@localhost CTFd]# docker-compose up -d
WARNING: The Docker Engine you're using is running in swarm mode.
Compose does not use swarm mode to deploy services to multiple nodes in a swarm. All containers will be scheduled on the current node.
Creating ctfd_db_1    ... done
Creating ctfd_ctfd_1  ... done
Creating ctfd_cache_1 ... done
Creating ctfd_ctfd_1  ... 
Recreating ctfd_nginx_1 ... done 

安装完成,访问IP:8000,进入CTFd初始化界面,按需注册账号密码后,点finish可进入CTFd平台
pip3 install gunicorn

https://github.com/CTFd/CTFd


部署一个ctf题目

sudo mkdir -p /home/cys/CTF #创建CTF目录
sudo cd /home/cys/CTF
sudo git clone https://github.com/CTFTraining/CTFTraining.git #安装CTFTraining,注意这里只能git下来目录,目录中是空的,需要一个一个CTF题目去git
cd CTFTraining
ls

里面只有目录,没有内容

sudo git clone https://github.com/CTFTraining/0ctf_2016_unserialize.git #下载CTF题目,只要替换0ctf_2016_unserialize为其他目录名称即可下载所有题目
cd 0ctf_2016_unserialize/ #进入题目目录中
ls

发现目录中已经有内容了

修改docker-compose.yml文件,设置端口及flag

使用docker-compose启动:

sudo docker-compose up -d #使用docker-compose下载镜像生成容器并启动容器

 要16步,第一启动费时间。

已经启动,在本地访问IP:8302发现可以访问,但在其他电脑无法访问


停止并删除容器,并修改配置文件docker-compose.yml
sudo docker stop 2c6df451d955 #停止容器,2c6df451d955为CTF题目CONTAINER ID
sudo docker rm 2c6df451d955 #删除容器,2c6df451d955为CTF题目CONTAINER ID
sudo vim docker-compose.yml #vim将127.0.0.1修改为0.0.0.0
 
# 0ctf 2016 piapiapia
version: "2"
 
services:
 
  web:
    build: .
    image: ctftraining/0ctf_2016_unserialize
    environment:
      - FLAG=flag{nizhenshigedacongming}
    restart: always
    ports:
      - "0.0.0.0:8302:80"
 本机在浏览器上访问正常,但是同一局域网的其他电脑却无法连接


解决:
打开VM点击虚拟机–>设置–>硬件–>网络适配器–>选择桥接:直接连接到物理网络

 

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

虚拟机内搭建CTFd平台搭建及CTF题库部署,局域网内机器可以访问 的相关文章

  • opencv中人脸识别算法的基本原理

    opencv中人脸识别算法的基本原理 一 使用opencv中自带的三种人脸识别算法进行实验后 特意去了解学习了一下其基本原理 在这里记录下 opencv人脸识别 关于如何使用opencv实现人脸识别的过程可以参考 http blog csd
  • 一文带你走完Nginx的配置方法(Nginx+Flask)

    作为一个南方人 我每天都洗澡 一年四季 从不间断 甚至我在北京读书的7年 都这么过来的 除开几次喝醉的情况 洗澡是一件很舒服的事情 你可以完全放松 听着music 哼着小曲 多么惬意 阿基米德也是在洗澡的时候发现了浮力 以此证明 洗澡是件好
  • kafka安装

    1 安装版本 链接 https pan baidu com s 1NgJKs6WMKZdfaqS8WTqiWA 提取码 0103 安装包 kafka 2 12 2 6 0 tgz 注意 为保证下面命令正确执行 请将该安装包放到 opt 目录
  • 解决MyEclipse编写properties文件时,中文注释显示为Unicode码问题

    在编写properties文件时 注释中的中文显示为Unicode码 并且在Properties窗口下也无法显示注释 如下图 解决方案如下 在Source窗口下编写 先在注释前的 号前加上一个 然后在这行注释的最后一个位置的后面加上一个 同

随机推荐

  • 踏浪点神:5.21 恒指黄金原油早盘分析及最新资讯

    恒指最新资讯 周三美国三大股指集体收涨 道指收涨近370点 纳指涨2 08 标普500指数涨1 67 港股ADR指数按比例计算 收报24 443点 涨43 90点或0 94 美国7月原油期货收涨4 88 报33 52美元 桶 创3月10日以
  • [hive]分区表

    一 分区表的技术与意义 1 分区表技术 1 建表时通过partitioned by col name col type hive的分别区字段使用的是外字段 2 hive的分区 区分大小写 3 hive的分区本质是在表目录下面创建目录 但是该
  • WebAPI规范

    WebAPI规范 一 协议 通常使用HTTPs协议 二 域名 API较简单 可将API放在主域名下 以固定prefix开头 例如 https example com api xxxx API内容丰富 复杂多样 可将API部署在专属域名下 例
  • systemverilog的timescale作用域

    参考文献1 https www chipverify com verilog verilog timescale scope 在数字电路仿真过程中 如果没有模块本身没有指定timescale 则编译器本身可能插入一个默认的timescale
  • 什么是死亡之 Ping 攻击?

    死亡之 Ping 攻击是一种拒绝服务 DoS 攻击 攻击者旨在通过发送大于最大允许大小的数据包来破坏目标计算机 从而导致目标计算机冻结或崩溃 原始的死亡之 Ping 攻击如今并不常见 称为 ICMP 洪水攻击的相关攻击更为普遍 死亡之 Pi
  • AD PCB 封装 快速放置等间距焊盘的方法

    这个问题经常会用到 所以有必要总结一下 下面以制作29个焊盘为例 其实你可以随便设置的 划重点 先按E然后按A快捷键 设置数量和间距大小 先说一种通用的吧 用特殊粘贴来处理 具体的方法为 1 先放一个焊盘 选中后剪切掉 2 依次按下键盘上的
  • 电子科技大学软件工程期末复习笔记(二):软件过程

    目录 前言 重点一览 软件过程模型的定义 软件工程的中心与三要素 软件生存期模型 瀑布模型 快速原型模型 增量模型 螺旋模型 如何选择过程模型 能力成熟度模型的五个级别 过程和产品的关系 本章小结 前言 本复习笔记基于王玉林老师的课堂PPT
  • mysql数据库缺点_MySQL数据库的优缺点是什么

    MySQL数据库的优缺点 优点 体积小 速度快 总体拥有成本低 开源 支持多种操作系统 是开源数据库 提供的接口支持多种语言连接操作 MySql的核心程序采用完全的多线程编程 线程是轻量级的进程 它可以灵活地为用户提供服务 而不过多的系统资
  • OpenTSDB-时序数据库

    一 简介 OpenTSDB Open time series data base 时间序列数据库 顾名思义 就是以时间为标签存储数据 它的特点是能够提供最高 毫秒级精度 的时间序列数据存储 能够长久保存原始数据并且不失精度 但是OpenTS
  • 核心解读 - 2022版智慧城市数字孪生标准化白皮书

    核心解读 2022版智慧城市数字孪生标准化白皮书 前言 城市数字孪生基本概念 一 城市数字孪生概述 1 城市数字孪生内涵及概念模型 2 城市数字孪生典型特征 3 城市数字孪生相关方 4 城市数字孪生技术参考架构 5 城市数字孪生关键技术 二
  • windows双网卡时设置网络优先级

    前言 仅在win10测试可用 在工作中需要连接公司内网 有线 不可联网 访问外网时需要连接无线 同时接入这两个网络时 内网访问正常 外网无法访问 此时可以通过调整网络优先级及配置路由实现内外网同时访问 一般来说 内网的网段数量较少 我们可以
  • 史上最详细教你制作“U盘启动盘”重装Windows10系统

    前言 几个月前的小编自己的一台windows笔记本系统崩溃 当时我还不会重装系统 而且那台笔记本的性能实在是太差的 内存特别小的古董笔记本 现在换了新的电脑 我现在要做的是 依靠手里的这台电脑 通过制作U盘启动盘 来重装我的windows系
  • JSP基础_0800_Directive 编译期指令

    Directive 编译指令 编译期间的指令 格式 常见的Directive page include 以后常用 必须掌握 taglib 1 page的下面四个属性最常用 2 include属性
  • 1695 删除子数组的最大得分

    题目描述 给你一个正整数数组 nums 请你从中删除一个含有 若干不同元素 的子数组 删除子数组的 得分 就是子数组各元素之 和 返回 只删除一个 子数组可获得的 最大得分 如果数组 b 是数组 a 的一个连续子序列 即如果它等于 a l
  • vscode配置PHP调试xDebug

    一 安装XDebug环境 1 在PHP页面写上phpinfo 打印PHP信息 如下图 2 整个网页全新复制黏贴到 https xdebug org wizard 如下图 点击分析按钮 3 如下图 分析结果 按如下步骤操作即可 4 下载xde
  • 查看端口号被哪些进程所占用,如何根据PID查看其对应的程序

    查看端口号 在终端里面输入 netstat ano PID所对应的程序 首先按 shift Ctrl esc 任务管理器 状态 右键显示出PID 任务管理器可以搜索PID 找到对应的PID就知道端口号了 查询PID更快的方法 powersh
  • es6数组去重+找出去重的个数

    本Markdown编辑器使用 StackEdit 6 修改而来 用它写博客 将会带来全新的体验哦 分享es3去重 找出重复个数跟es6的 Array prototype unique3 function var res var json f
  • 学历不应该成为“枷锁”

    孔乙已是鲁迅笔下人物 穷困流倒还穿着象征读书人的长衫 迁腐 麻木 最近 大家自我调佩是 当代孔乙己 学历成为思想负担 找工作时高不成低不就 你可以从以下几个角度说说你对看法 一 你认为社会对于学历和职业之间的关系认知是怎样的 首先我认为社会
  • PowerDesigner中显示name, code,comment的解决方法 修正脚本,执行不会重复添加comment...

    Option Explicit ValidationMode True InteractiveMode im Batch Dim mdl the current model get the current active model Set
  • 虚拟机内搭建CTFd平台搭建及CTF题库部署,局域网内机器可以访问

    一 虚拟机环境搭建 1 安装docker git docker compose ubuntu sudo apt get update 更新系统 sudo apt get y install docker io 安装docker sudo a