Linux Ubuntu系统使用Docker搭建vulhub靶场环境

vulhub靶场,是开源的漏洞Docker环境,安装简单,使用方便。

一、安装Docker

使用便捷脚本安装Docker:

bash 复制代码
curl -fsSL https://get.docker.com | sh

https://vulhub.org您遇到的 curl: (35) OpenSSL SSL_connect: 连接被对方重设 错误,通常表示网络连接在 SSL 握手阶段被中断。

可以使用国内镜像源安装(推荐)

由于 Docker 官方源在部分地区连接不稳定,建议使用阿里云或清华大学镜像:

方法:使用阿里云安装脚本

bash 复制代码
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io

📥 下载与使用 Vulhub

有了基础环境,就可以下载 Vulhub 并进行测试了。

1.克隆 Vulhub 仓库:建议使用国内的镜像源(Gitee)来下载,速度会快很多(需要注册Gitee账号)。

bash 复制代码
# 在家目录下克隆一个 vulhub 文件夹
cd ~
git clone https://gitee.com/puier/vulhub.git

2.启动一个靶场:下载完成后,我们进入一个具体的漏洞目录(比如 ThinkPHP 5 的 RCE 漏洞)并启动它。

bash 复制代码
cd ~/vulhub/tomcat/CVE-2017-12615
# 启动环境(-d 表示后台运行)
sudo docker compose up -d

如果拉去镜像失败,这个报错是因为网络问题导致从 Docker Hub (docker.io) 拉取镜像超时。这不代表 vulhub/tomcat 镜像本身有问题,而是你访问国外官方仓库的网络不通畅。

解决办法不是更换镜像名,而是更换镜像源------给 Docker 配置一个国内的加速器地址。

✅ 解决方案:配置国内镜像加速器

你可以通过修改 Docker 的配置文件 daemon.json,加入稳定的国内镜像源地址来解决。

1). 编辑配置文件

在终端中执行以下命令打开配置文件(如果文件不存在,这个命令会新建它):

bash 复制代码
sudo vim /etc/docker/daemon.json

2). 添加镜像源地址

按 i 进入编辑模式,将下面镜像源地址复制进去。

  • 推荐方案:使用多个备选地址,提高稳定性

    json 复制代码
    {
    "registry-mirrors": [
      "https://docker.1panel.live",
      "https://docker.m.daocloud.io",
      "https://dockerproxy.cn"
    ]
    }

3). 保存并退出

按 Esc 键,然后输入 :wq 并回车保存。

4). 重启 Docker 服务

让刚才的配置修改生效:

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl restart docker

5). 重新拉取镜像

现在再次尝试拉取 vulhub/tomcat 镜像,速度应该就正常了:

bash 复制代码
sudo docker compose up -d

3.关闭靶场 :用完某个漏洞环境后,回到对应的目录下执行 down 命令即可一键关闭,非常干净。

bash 复制代码
sudo docker compose down -v

相关推荐
忆挽篱笙歌3 小时前
gdb/cgdb
linux·ubuntu
Knight_AL4 小时前
PostgreSQL Docker 数据库备份:pg_dump 与 SQL 格式备份的区别
数据库·docker·postgresql
Julien20044 小时前
管理 Ansible 配置文件
linux·运维·服务器·ssh·学习方法
MicrosoftCloud5 小时前
性能排查 01|free 显示内存用了 90% 就是快满了吗?buff/cache 与 available 一次讲清
linux·运维·内存·free·buff/cache
灯澜忆梦5 小时前
【docker】#1 | Docker 初识
运维·docker·容器
xiaoye-duck5 小时前
《Linux 网络编程》深入理解 epoll(下):epoll 实战开发与 LT/ET 触发模式深度剖析
linux·网络
成为你的宁宁6 小时前
【Ubuntu 18.04安装Gitlab】
ubuntu·gitlab
峥无6 小时前
Linux线程深度剖析:轻量级进程、虚拟内存分页、进程线程资源对比
linux·运维·mmap
骑着蜗牛撵大象3276 小时前
穿越 Docker 内核迷雾:镜像分层的叠加态与卷挂载的空间穿梭
运维·docker·容器·联合文件系统·卷挂载·镜像分层·存储驱动
goehou6 小时前
AI 应用上线实战:从本地脚本到 Docker 容器化(密钥、健康检查、镜像瘦身)
docker·ai·llm·部署·教程·容器化