CTFd平台想要搭建成功,需要centos7,python,mariadb,flask,apache
mysqldump -u root -p --database_name >name.sql
卸载:yum remove mariadb
删除配置文件:rm -f /etc/my.conf
删除数据目录:rm -rf /var/lib/mysql/
vim /etc/yum.repos.d/Mariadb.repo
添加下列内容
# MariaDB 10.2 CentOS repository list - created 2018-06-06 03:42 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
清除yum源缓存数据
yum clean all
生成新的yum源数据缓存
yum makecache all
yum install MariaDB-server MariaDB-client -y
启动并添加开机自启
systemctl start mariadb.service
systemctl enable mariadb.service
mysql -uroot -p >/root/backup/java_api.sql
systemctl restart mariadb
yum install -y python-pip
yum install -y git
yum install -y epel-release
升级一下pip
sudo pip install --upgrade pip
安装flask
pip install flask
(当出现下载的进度条时说明没出问题,如果没有出现就小心,一会可能会出问题)
yum install httpd
#设置开机自启动apache
systemctl enable httpd.service
#要想验证是否自启动可以重启后在终端下输入以下命令
systemctl is-enabled httpd.service
#如果看到enable,则证明apache已经启动成功
进入html文件夹下
cd /var/www/html
下载源码
wegt https://github.com/CTFd/CTFd/archive/master.zip
解压源码压缩包
unzip master.zip
因为要修改文件 所以需要更改文件夹权限
chmod -R 777 CTFd-master/
cd CTFd-master
运行脚本
sudo ./prepare.sh
这时会出现各种问题!!!
#当红字告诉你他需要的插件模块版本比你现有的版本高,这时我们
yum remove xxx
yum install xxx
或者
pip uninstall xxx
pip install xxx
卸载一下重新安装就ok
然后继续运行脚本
sudo ./prepare.sh
如果提示没有requets等模块说明flask安装不正常
卸载重新安装几次继续运行脚本
先进入数据库
mysql -u root -p root
创建数据库
CREATE DATABASE CTFd;
退出数据库
exit;
#重启apache
systemctl restart httpd
#重启数据库
systemctl restart mariadb
#关闭防火墙
systemctl stop firewalld
运行server.py文件
运行这个文件之后,这个终端就不要动了,一定要另外再开一个终端
重启apache服务 systemctl restart httpd
重启数据库服务 systemctl restart mariadb
用浏览器访问一下ip:4000 当出现这个画面我们的平台就搭建成功了
如果是想要从外网访问到这个平台,还需要gunicorn模块
# sudo pip install gunicorn
# gunicorn --bind 0.0.0.0:4000 -w 1 "CTFd:create_app()"
这样外网就可以成功访问了