搭建靶场平台

前几天突发奇想想搭建一个自己的ctf靶场(相当于自己出题自己做 ),在fanl哥的帮助下我有了属于自己的第一个服务器(虽然是租的 ),找了挺多教程的,终于找到了一个相对来说合适我的 ,那就出一篇文章来记录一下叭~

准备

  • 一台Ubuntu服务器,Xshell[用来连接服务器],Xftp[用来传输文件]
  • 访问:https://githb.com/divyanshusahu/miniCTF并下载文件
    mduetvsm.png
  • 通过Xftp把文件传到服务器
    mduewqmh.png
  • 查看文件是否上传成功
    mduf0kpo.png

    创建一个虚拟环境

    pipenv  shell
    pipenv install

    mduf8s6o.png
    出现这样的算成功

    python manage.py makemigrations accounts challenges forums

    报错

    解决:

    No module named 'constans'

    进入:

    nano miniCTF/constants.py

    找到:

    LAVGUAGE_CODE="EN_us"
    TIME_ZONE="UTC"
    USE_I18N=TRUE
    USE_L10N=TRUE
    USE_TZ=TRUE

    把这些复制到"miniCTF/setting.py"这个配置文件中

进入:
nano miniCTF/setting.py
修改:
#from constants import (ANGUAGE_CODE.TIME_ZONE,USE_L10N,USE_TZ)

解决:

keyError:'key'

在虚拟环境中:

mv .env.example .env
nano .env
key='abc123'  //'可以随便写,记住就行'

成功之后再运行一下:

python manage.py makemigrations accounts challenges forums

同步数据库

python manage.py migrate

成功之后运行:

python manage.py runserver

最后一步

建立一个新会话并测试一下:

curl http:127.0.0.1:8000

不过这个时候还访问不了服务器
(在自己的服务器中要放行8000端口)
回到第一个页面:

python manage.py runserver 0.0.0.0:8000

此时可以在浏览器访问:服务器IP:8000
发现页面时停止运行的

进入:
nano mini/settings.py
修改:
ALLOWED_Host=[*]

再运行:

python manage.py runserver 0.0.0.0:8000

mduhhoy4.png
出现这样的说明服务器已经开启这个功能了
在浏览器访问:服务器IP:8000就有靶场的登录页面了
mduhk8mw.png

添加管理员

python manage.py createsuperuser

回车之后依次添加管理员的账号和密码
管理员可以出题,但不能答题
mduhmpmo.png


这篇文章是在靶场搭建完成之后才写的,少了点图片
如果想要服务器停止运行使用:ctrl+C,不要ctrl+Z不然下一次开启要先kill之前的进程

注意:这种靶场搭建不能用宝塔,python版本冲突了好像
评论区
头像