docker安装CTFD
写在最前:
之前把一直在倒腾docker,结果自己的云主机被弄死了N次,然后也就是在元旦期间,仔细想了一下ctfd的搭建流程其实有更简单的操作性
就有了下面的段内容,请看演示:
首先在新装的云主机上安装phpstudy(没办法不想下太多东西)执行完命令后就有了两种方式搭建ctfd环境 ,一种是手撸,另一种利用docker安装。
这里本人选择了docker(手撸的方式想死的心都快有了)。
在浏览器上输入xp.cn,因为主机是Ubuntu的,所以选择Linux标签,接着在最下面找到安装命令(保证系统全新哈,不行的请跳过)
wget -O install.sh https://download.xp.cn/install.sh && sudo bash install.sh //这是Ubuntu的命令
-----------------------------------手动安装-----------------------------------
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install docker-ce docker-ce-cli containerd.io
yum list docker-ce --showduplicates | sort -r
yum install --setopt=obsoletes=0 docker-ce-18.06.3.ce-3.el7
docker -version
systemctl start docker
执行以后,稍稍等待一会就可以,直到看到这样的提示说明安装结束。
请用浏览器访问面板http://xxx.xxx.xxx.xxx:9080/xxxxxx
系统初始账号:admin
系统初始密码:mBI21ySidT
官网https://www.xp.cn
如果使用的是云服务器,请至安全组开放9080端口
如果使用ftp,请开放21以及30000-30050端口
如果在虚拟机安装,请将ip换成虚拟机内网ip
=================安装完成==================
此时可以选择浏览器验证,也可以不选。然后开始在仓库中搜索ctfd。
sudo docker search ctfd //搜索中 ,接着在最前看 ctfd/ctfd
这里选择第一个据说是官方的,看不懂英文提示但是大家都这么说应该就是了
sudo docker pull ctfd/ctfd //将这个ctfd弄下来的意思
然后执行查看镜像命令,查看下载好的镜像
sudo docker images //这里主要是为了确认镜像名称 REPOSITORY 只要没有改的话
然后进行端口映射通过之前的安装经验得知ctfd的端口是8000,所以这里假设我想给它映射到主机的8080端口中,并且后台运行(这里很重要哦)
sudo docker run -d -p 8080:8000 ctfd/ctfd //这样就做好了端口映射(完全不需要那些乱七八糟的【明细】)
接下就是浏览器访问了。
注意:如果中间出现问题可能就是你的权限不够忘记sudo命令了,或者docker。
这里进去就是配置页面。。。。然后自行配置题目(还有就是它竟然是英文的,看不懂的可以进行汉化)
嗯就是这样下面的就是些错误演示了。┭┮﹏┭┮
在docker安装中我使用的是新装的ubuntu 18
开始安装docker
sudo wget -qO- https://get.docker.com/ | sh
sudo usermod -aG docker username ##你的用户名
这结束以后可能会提示一下,淡定,这是正常的,下面将它们翻译了一下
If you would like to use Docker as a non-root user, you should now consider
如果你想使用Docker作为非根用户,你现在应该考虑
adding your user to the "docker" group with something like:
将您的用户添加到“docker”组,如下所示:
sudo usermod -aG docker ubuntu
sudo usermod-aG docker ubuntu
Remember that you will have to log out and back in for this to take effect!
记住,您必须注销并重新登录才能生效!
WARNING: Adding a user to the "docker" group will grant the ability to run
警告:将用户添加到“docker”组将授予运行
containers which can be used to obtain root privileges on the
可用于获取
docker host.
码头主人。
Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
请参阅https://docs.docker.com/engine/security/security/#docker守护进程攻击面
for more information.
更多信息。
注:如果在这里出现提示信息,大概意思是注销下账号或者重启即可解决。其他问题可能是权限不足导致的,建议加下 sudo 或是 切换到 root 下进行。
sudo curl -L https://github.com/docker/compose/releases/download/1.25.0-rc1/docker-compose-`uname -s`-`uname -m` -o /usr/local/binocker-compose
接着修改下权限
sudo chmod +x /usr/local/bin/docker-compose
docker-compose version
下面开始git获取文件,不过就是速度太慢了。据说这里需要代理什么就会快了。。。
git config --global http.postBuffer 1048576000
这样经过漫长的等待就下好了
开始一键部署靶场
Vulhub
使用Vulhub一键搭建漏洞测试靶场
docker-compose up -d
如果中间链接断开,重新启动下就好。接着等待1个小时左右。。。。
然后进行端口映射
sudo iptables -t nat -A DOCKER -p tcp --dport 8001 -j DNAT --to-destination 【ip】:8000
当然还可以镜像搜索
docker search CTFD
下载镜像
docker pull ctfd/ctfd_ctfd
创建容器
docker run -it -d –name ctfd -p 80:8000 ctfd/ctfd
进入容器
docker exec-it ctfd /bin/sh