简介
Vulhub是一个基于
docker
和
docker-compose
的漏洞环境集合,进入对应目录并执行一条语句即可启动一个全新的漏洞环境,让漏洞复现变得更加简单,让安全研究者更加专注于漏洞原理本身
1.下载docker:
sudo vim /etc/apt/sources.list #更新源
apt-get update
apt-get install docker.io
docker --version
2.下载docker-compose:
使用二进制文件进行下载
3.下载vulhub:
git clone https://github.com/vulhub/vulhub.git
4.打开靶场,启动靶场
进入靶场目录下
docker-compose up -d
一、首先需要安装docker
二、下载docker-compose
下载docker-compose(建议下载二进制文件)
为 Docker Compose 二进制文件添加执行权限:
sudo chmod +x /usr/local/bin/docker-compose
查看是否安装完成
三、下载vulhub靶场
要使用Vulhub靶场,首先需要开启Docker,如果没有启动Docker,那么Vulhub的启动会报错。Docker启动后,进入到相应的目录下,执行命令
四、配置docker源(最重要的一步,出现问题最多的一步🙄)
之前使用国内的docker镜像源,无法pull靶场的镜像,但可以pull ubuntu的镜像
这里就更改配置形式,改为走代理的形式🛫
让自己的docker直接访问docker官方的image源
1.编辑 Docker 的代理配置文件,通常是 /etc/systemd/system/docker.service.d/http-proxy.conf
。如果该目录或文件不存在,可以创建它。
里面添加内容:
[Service]
Environment="HTTP_PROXY=代理服务器ip:port"
Environment="HTTPS_PROXY=代理服务器ip:port"
假如我们本机已经设置好代理了,那么代理服务器就可以写为
localhost
,端口就是我们设置的http和https代理端口即可,形如:
[Service]
Environment="HTTP_PROXY=localhost:port"
Environment="HTTPS_PROXY=localhost:port"
保存好之后,重启docker,并重启daemon进程
sudo systemctl daemon-reload
sudo systemctl restart docker
五、进入想要创建的靶场目录下,开启容器(这里以cve-2012-2122为例子)
使用docker-compose开启容器
六、记录vulhub安装使用中,出现的问题
1.出现下面的问题,是daemon.json的格式出错了,将该文件删除就行。如果还需要用就再创建一个
2.docker pull 的时候出现如下error
Using default tag: latest
Error response from daemon: Get "https://registry-1.docker.io/v2/": proxyconnect tcp: EOF
pull出现报错可能是代理配置或网络连接问题
🍊检测代理文件:‘/etc/systemd/system/docker.service.d/proxy.conf’
🍅有时 DNS 问题也会导致连接失败,你可以尝试配置 Docker 使用 Google 的 DNS:
在etc/docker/daemon.json文件中添加
{
"dns": ["8.8.8.8", "8.8.4.4"]
}
之后,仍是重启daemon进程,重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
🫑在国内使用访问docker的官方镜像源肯能比较慢,大多使用国内镜像加速器。例如:
{
"registry-mirrors": ["[https://dockerhub.icu](https://dockerhub.icu)"]
}
但是这次使用的是连接代理直接访问docker官方镜像,如果在daemon.json文件中添加了镜像加速器,那么解决办法就是删除掉多余的镜像加速器
3.Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connectio
原因可能是docker pull:TLS握手包超时
使用curl查看报错详情
curl https://registry-1.docker.io/v2/
解决办法:将https代理的地址 改成http//网址
vim /etc/systemd/system/docker.service.d/proxy.conf
[Service]
Environment="HTTP PROXY=http://192.168.1.9:1080"
Environment="HTTPS PROXY=http://192.168.1.9:1080'
之后,仍是重启daemon进程,重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
版权归原作者 白8080 所有, 如有侵权,请联系我们删除。