学校要办ctf了,自己一个人给学校搭建踩了好多坑啊。。这里记录一下吧 心累心累

这里只记录尝试成功的过程 有些尝试失败的就没贴上来 为各位搭建的时候节省一部分时间吧。

ubuntu18搭建

0x01 CTFd平台搭建 

1.升级源

$ sudo apt-get update

2.安装git

因为CTFd的源码和部署好的题目都是要通过github传输的。

$ sudo apt install git

3.安装pip  

$ sudo apt install python-pip

如果出现异常可以升级pip

$ sudo python -m pip install --upgrade pip

4.安装Flask

因为CTFd是基于Flask框架建造的,所以要搭建CTFd肯定要安装Flask

$ sudo pip install Flask

5.下载CTFd

$ sudo git clone https://github.com/isislab/CTFd.git

6.安装CTFd

$ cd CTFd
$ sudo ./prepare.sh

7.运行CTFd

$ sudo python serve.py

现在可以直接在本地访问了,但是我要架的是可以通过外网访问还要安装gunicorn

8.安装gunicorn并规定映射的端口

$ sudo pip install gunicorn
$ sudo gunicorn --bind 0.0.0.0:8000 -w 1 "CTFd:create_app()"

0x02 nginx转发&&汉化

用是可以用了 但是比较要考虑到性能,用nginx做个转发

vim /etc/nginx/nginx.conf

 server{
                listen ;
                server_name  你的ip;

                location / {
                        proxy_pass http://127.0.0.1:8000;

                        proxy_set_header Host $http_host;

                        proxy_set_header X-Real-IP $remote_addr;

                        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                        proxy_redirect off;
                }

ok了,然后重启nginx

nginx -s reload
gunicorn --bind  -w  "CTFd:create_app()"

这样访问外网就可以访问了 接下做汉化

汉化非常简单

所需文件

  • 链接:https://pan.baidu.com/s/1WKUcl5JkMStnz5wsqlyoZw   提取码:r45q
  1. 下载上方所需文件
  2. 解压themes.zip

上传至服务器 进行替换 ,注意不是合并

CTFd平台部署的更多相关文章

  1. CTFD平台部署自制题目指北(灌题)

    给实验室同学搭建的CTFD平台用于内部训练和CTF的校赛,为了循序渐进当然是先内部出一些简单入门的题目,但是网上大部分关于CTFD平台的都只是部署,而关于题目放置的内容却很少,虽然这个过程比较简单,但 ...

  2. CTFd平台搭建以及一些相关问题解决

    CTFd平台搭建以及一些相关问题解决 一.序言 因为想给学校工作室提高一下学习氛围,随便带学弟学妹入门,所以做了一个ctf平台,开源的平台有CTFd和FBCTF,因为学生租不起高端云主机所以只能选择占 ...

  3. CentOS平台部署vsftp(基于虚拟用户)

    1. 安装FTP 1 2 [root@task ~]# yum install vsftpd –y [root@task ~]# chkconfig vsftpd on          # 配置开机 ...

  4. Mesos+Zookeeper+Marathon的Docker管理平台部署记录(2)- 负载均衡marathon-lb

    之前介绍了Mesos+Zookeeper+Marathon的Docker管理平台部署记录(1)的操作,多余的废话不说了,下面接着说下在该集群环境下的负载均衡marathon-lb的部署过程: 默认情况 ...

  5. Mesos+Zookeeper+Marathon的Docker管理平台部署记录(1)

    随着"互联网+"时代的业务增长.变化速度及大规模计算的需求,廉价的.高可扩展的分布式x86集群已成为标准解决方案,如Google已经在几千万台服务器上部署分布式系统.Docker及 ...

  6. Puppet基于Master/Agent模式实现LNMP平台部署

    前言 随着IT行业的迅猛发展,传统的运维方式靠大量人力比较吃力,运维人员面对日益增长的服务器和运维工作,不得不把很多重复的.繁琐的工作利用自动化处理.前期我们介绍了运维自动化工具ansible的简单应 ...

  7. elk实时日志分析平台部署搭建详细实现过程

    原文:http://blog.csdn.net/mchdba/article/details/52132663 1.ELK平台介绍 在搜索ELK资料的时候,发现这篇文章比较好,于是摘抄一小段:以下内容 ...

  8. Mesos, Marathon, Docker 平台部署记录

    Mesos, Marathon, Docker 平台部署记录 所有组件部署基于Ubuntu 14.04 x64 主机 IP 角色 master 192.168.1.3 Mesos Master, Ma ...

  9. CloudFoundry 云平台部署

    CloudFoundry云平台部署 CloudFoundry(TheOpenSourceCloudOperatingSystem)距离发布已经一年多了作为第一个开源的PaaS平台日臻成熟.在这一年里C ...

随机推荐

  1. 本地代码上传github失败常见错误

    1.上传失败 解决办法如下: 可以通过如下命令进行github与本地代码合并: git pull --rebase origin master 重新执行上传命令: git push -u origin ...

  2. Python中使用moviepy进行视频分割

    场景 moviepy官网: https://pypi.org/project/moviepy/ 是一个用于视频编辑的Python库:切割.连接.标题插入.视频合成.非线性编辑,视频处理和定制效果的创建 ...

  3. WeakMap 本身释放,而 keyObject 没有释放的情况下,value 会释放吗?

    const keyObject = ['keyObject']; new WeakMap().set(keyObject, ['value']); 问题:现在 ['value'] 会被释放吗? 听说W ...

  4. 取html里的img和去html标签

    C#  : public string RemoveHTML(string html) { html = Regex.Replace(html, @"<script[^>]*?& ...

  5. PHP的跨域问题

    服务端的代码 public function test(){ header("Access-Control-Allow-Origin: http://cnblogs.com"); ...

  6. Java图片处理:ico格式转 PNG/JPG等格式

    一. 什么是ico图标? ico是一种图标格式,大量应用于网站,各个软件的logo或图标展示. 我们在进入某个网站或网页,它们上方标题左侧各自都带有logo图标. 这就是favicon.ico图标,它 ...

  7. 浅谈Linux进程管理

    一  查看系统进程 在linux中,查看系统进程的命令为ps,常用格式为如下两个: (1)ps aux:unix格式查看系统进程 (2)ps -le:linux格式查看系统进程 一般地,ps aux更 ...

  8. Java 客户端服务器范例

    最近在面试,虽然学习了一些新的框架,但是可能问类似于客户端服务器模型,然后根据其设计,所以就根据面试内容梳理一下客户端服务器模型. 客户端基本思路: 1.创建Socket实例,设置端口和IP地址等 2 ...

  9. 对Servlet执行流程的初步认识

    这里我们以Post方式请求Serclet为例 1.找到 中的URL地址 Form表单的Post请求HelloServlet(Action="HelloServlet")发起时, A ...

  10. Spring MVC-从零开始-@RequestMapping 注解headers 属性

    package com.jt; import org.springframework.stereotype.Controller; import org.springframework.web.bin ...