最近學(xué)校要做一個(gè)ctf的比賽营袜,就想著搭一個(gè)平臺,好的開源平臺就是ctfd和fbctf,但是fbctf對服務(wù)器要求配置高慢显,所以只有搭建ctfd了梨熙,搭建好了使用效果感覺真心不錯(cuò)开镣。
1.服務(wù)器使用的是centos 7.2 64,首先運(yùn)行一下yum -y update更新一下服務(wù)器咽扇,再安裝一下nginx(yum -y install nginx)邪财,因?yàn)楹竺嬗盟鼇矸聪虼韈tfd的端口可以提高一下性能。
然后安裝數(shù)據(jù)庫质欲,yum -y install mariadb mariadb-server,啟動數(shù)據(jù)庫systemctl start mariadb树埠,
mysql_secure_installation開始配置數(shù)據(jù)庫,先輸入密碼嘶伟,然后一路回車即可怎憋,可根據(jù)自己需求看著改。
安裝git(yum -y install git)
2.
然后新建一個(gè)ctf的文件夾奋早,將其下載到里面 git clone https://github.com/isislab/CTFd.git?
然后先運(yùn)行CTFd下面的./prepare.sh盛霎,centos和ubuntu并不一樣,可以打開這個(gè)文件按照操作系統(tǒng)自己安裝插件
yum -y install MySQL-python
修改配置文件config.py,
我的修改是這樣的
將圖中的修改成自己的信息就行耽装,
然后進(jìn)入數(shù)據(jù)庫 mysql -u root -p,
新建一個(gè)庫期揪,CREATE DATABASE CTFd;
此時(shí)退出數(shù)據(jù)庫返回CTFd目錄運(yùn)行一下serve.py
ctrl+c退出再進(jìn)入數(shù)據(jù)庫
use CTFd;
執(zhí)行
防止亂碼掉奄,將里面的字符集全部修改為utf-8.
退出mysql,
直接在ctfd目錄下運(yùn)行g(shù)unicorn --bind 0.0.0.0:4000 -w 1 "CTFd:create_app()"
記得安全組或者防火墻開放4000的端口,不然無法訪問姓建,
就這樣诞仓,一個(gè)CTFd的網(wǎng)站就搭好了,
可以配置下nginx,vi /etc/nginx/nginx.conf
server的location /{
}中加入下面語句
proxy_pass http://localhost:4000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
然后平滑啟動nginx,
nginx -s reload
最后回到開始建的ctf的目錄下面的CTFd目錄運(yùn)行gunicorn --bind 0.0.0.0:4000 -w 1 "CTFd:create_app()"
此時(shí)直接訪問你的服務(wù)器地址就能直接入坑了速兔,不用加4000端口了(有些瀏覽器可能有緩存不能及時(shí)訪問墅拭,刷一下就行了)。用了nginx后會發(fā)現(xiàn)更流暢了不是涣狗。