CTFd平台部署
学校要办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
- 下载上方所需文件
- 解压themes.zip
上传至服务器 进行替换 ,注意不是合并


CTFd平台部署的更多相关文章
- CTFD平台部署自制题目指北(灌题)
给实验室同学搭建的CTFD平台用于内部训练和CTF的校赛,为了循序渐进当然是先内部出一些简单入门的题目,但是网上大部分关于CTFD平台的都只是部署,而关于题目放置的内容却很少,虽然这个过程比较简单,但 ...
- CTFd平台搭建以及一些相关问题解决
CTFd平台搭建以及一些相关问题解决 一.序言 因为想给学校工作室提高一下学习氛围,随便带学弟学妹入门,所以做了一个ctf平台,开源的平台有CTFd和FBCTF,因为学生租不起高端云主机所以只能选择占 ...
- CentOS平台部署vsftp(基于虚拟用户)
1. 安装FTP 1 2 [root@task ~]# yum install vsftpd –y [root@task ~]# chkconfig vsftpd on # 配置开机 ...
- Mesos+Zookeeper+Marathon的Docker管理平台部署记录(2)- 负载均衡marathon-lb
之前介绍了Mesos+Zookeeper+Marathon的Docker管理平台部署记录(1)的操作,多余的废话不说了,下面接着说下在该集群环境下的负载均衡marathon-lb的部署过程: 默认情况 ...
- Mesos+Zookeeper+Marathon的Docker管理平台部署记录(1)
随着"互联网+"时代的业务增长.变化速度及大规模计算的需求,廉价的.高可扩展的分布式x86集群已成为标准解决方案,如Google已经在几千万台服务器上部署分布式系统.Docker及 ...
- Puppet基于Master/Agent模式实现LNMP平台部署
前言 随着IT行业的迅猛发展,传统的运维方式靠大量人力比较吃力,运维人员面对日益增长的服务器和运维工作,不得不把很多重复的.繁琐的工作利用自动化处理.前期我们介绍了运维自动化工具ansible的简单应 ...
- elk实时日志分析平台部署搭建详细实现过程
原文:http://blog.csdn.net/mchdba/article/details/52132663 1.ELK平台介绍 在搜索ELK资料的时候,发现这篇文章比较好,于是摘抄一小段:以下内容 ...
- Mesos, Marathon, Docker 平台部署记录
Mesos, Marathon, Docker 平台部署记录 所有组件部署基于Ubuntu 14.04 x64 主机 IP 角色 master 192.168.1.3 Mesos Master, Ma ...
- CloudFoundry 云平台部署
CloudFoundry云平台部署 CloudFoundry(TheOpenSourceCloudOperatingSystem)距离发布已经一年多了作为第一个开源的PaaS平台日臻成熟.在这一年里C ...
随机推荐
- 本地代码上传github失败常见错误
1.上传失败 解决办法如下: 可以通过如下命令进行github与本地代码合并: git pull --rebase origin master 重新执行上传命令: git push -u origin ...
- Python中使用moviepy进行视频分割
场景 moviepy官网: https://pypi.org/project/moviepy/ 是一个用于视频编辑的Python库:切割.连接.标题插入.视频合成.非线性编辑,视频处理和定制效果的创建 ...
- WeakMap 本身释放,而 keyObject 没有释放的情况下,value 会释放吗?
const keyObject = ['keyObject']; new WeakMap().set(keyObject, ['value']); 问题:现在 ['value'] 会被释放吗? 听说W ...
- 取html里的img和去html标签
C# : public string RemoveHTML(string html) { html = Regex.Replace(html, @"<script[^>]*?& ...
- PHP的跨域问题
服务端的代码 public function test(){ header("Access-Control-Allow-Origin: http://cnblogs.com"); ...
- Java图片处理:ico格式转 PNG/JPG等格式
一. 什么是ico图标? ico是一种图标格式,大量应用于网站,各个软件的logo或图标展示. 我们在进入某个网站或网页,它们上方标题左侧各自都带有logo图标. 这就是favicon.ico图标,它 ...
- 浅谈Linux进程管理
一 查看系统进程 在linux中,查看系统进程的命令为ps,常用格式为如下两个: (1)ps aux:unix格式查看系统进程 (2)ps -le:linux格式查看系统进程 一般地,ps aux更 ...
- Java 客户端服务器范例
最近在面试,虽然学习了一些新的框架,但是可能问类似于客户端服务器模型,然后根据其设计,所以就根据面试内容梳理一下客户端服务器模型. 客户端基本思路: 1.创建Socket实例,设置端口和IP地址等 2 ...
- 对Servlet执行流程的初步认识
这里我们以Post方式请求Serclet为例 1.找到 中的URL地址 Form表单的Post请求HelloServlet(Action="HelloServlet")发起时, A ...
- Spring MVC-从零开始-@RequestMapping 注解headers 属性
package com.jt; import org.springframework.stereotype.Controller; import org.springframework.web.bin ...