提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 一、靶场简介
- 二、部署环境要求
- 三、前置准备:解决Docker镜像拉取超时(核心避坑)
- 1. 编辑Docker镜像加速配置文件
- 2. 重启Docker生效配置
- 3. 验证加速配置是否生效
- 四、Vulfocus靶场完整搭建步骤
- 1. 拉取Vulfocus最新镜像
- 2. 启动Vulfocus容器
- 3. 查看容器运行状态
- 五、访问Vulfocus靶场
- 1. 访问地址
- 2. 初始账号密码
- 3. 自动拉取镜像
- <font color=#FF00FF>4. 手动拉取镜像/font>
- 5. 基础使用测试
- 六、常用运维命令(必备)
- 七、常见报错与解决方案
- 问题1:镜像拉取超时,提示 Client\.Timeout exceeded
- 问题2:浏览器无法访问靶场页面
- 问题3:漏洞环境启动失败
- 八、搭建总结
一、靶场简介
Vulfocus 是一款开源、轻量化、高可用性的漏洞集成靶场平台,由 FOFA 团队开发。靶场集成了 Web 漏洞、系统漏洞、中间件漏洞、代码审计等海量常见漏洞环境,支持一键启动、一键销毁、独立隔离,完美适配网络安全入门练习、渗透测试实训、漏洞复现学习,是网安从业者、安全学生必备的实战靶场。
相较于传统靶场,Vulfocus 最大优势是基于 Docker 容器化部署,环境隔离干净、部署简单、不污染宿主机系统,且支持自定义漏洞环境、批量管理靶机,新手也能快速上手。
二、部署环境要求
为保证靶场稳定运行,避免启动失败、卡顿、镜像拉取超时等问题,需满足以下基础环境:
操作系统:64位 Linux 系统(推荐 Ubuntu 20.04/22.04、Debian、CentOS7+)
核心依赖:Docker 20.10及以上版本
硬件配置:内存≥2G,磁盘≥20G(多开漏洞环境建议4G+内存)
网络要求:服务器可正常联网,开放对应端口(80端口为主)
三、前置准备:解决Docker镜像拉取超时(核心避坑)
绝大多数用户搭建失败的原因:官方 Docker 源境外访问超时、国内老旧镜像源失效,导致registry-1.docker.io 连接超时、镜像拉取失败。下面提供一键修复方案,配置国内稳定加速源。
1. 编辑Docker镜像加速配置文件
执行以下命令一键写入稳定可用的国内加速源(剔除所有失效源,只保留高可用毫秒镜像源):
- 镜像网址:https://1ms.run/r/vulfocus/vulfocus
cat>/etc/docker/daemon.json<<EOF { "registry-mirrors": ["https://docker.1ms.run"] } EOF2. 重启Docker生效配置
systemctl daemon-reload systemctl restartdocker3. 验证加速配置是否生效
dockerinfo输出内容中看到Registry Mirrors: https://docker.1ms.run即代表配置成功,后续拉取镜像不再超时。
四、Vulfocus靶场完整搭建步骤
1. 拉取Vulfocus最新镜像
配置完加速源后,执行拉取命令,下载官方最新版靶场镜像:
dockerpull docker.1ms.run/vulfocus/vulfocus:latest等待镜像下载完成(加速后下载速度大幅提升,无超时卡顿)。
具体结果如下:
2. 启动Vulfocus容器
执行以下标准启动命令,端口映射80端口,挂载Docker内核,保证漏洞环境正常创建与销毁:
dockerrun-d\--namevulfocus\-p1081:80\-v/var/run/docker.sock:/var/run/docker.sock\-eVUL_IP=xxx.xxx.xxx.xxx\-e"CELERY_RUN=1"\--restartalways\vulfocus/vulfocus:latest参数说明:
-d:后台守护进程运行容器--name vulfocus:自定义容器名称,方便后续管理-p 80:80:映射宿主机1081端口到容器80端口,网页直接访问-v /var/run/docker.sock:挂载Docker内核,让靶场可管理子漏洞容器-e "CELERY_RUN=1":开启自动同步镜像任务,如果不设置,Vulfocus 永远不会去拉取漏洞列表--restart always:开机自启、容器意外退出自动重启
结果如下:
3. 查看容器运行状态
执行命令查看容器是否正常启动:
dockerps若看到 vulfocus 容器状态为Up,说明部署成功。
(这里我开了另外一个服务,所有存在两个端口;)
五、访问Vulfocus靶场
1. 访问地址
浏览器输入服务器公网IP/内网IP即可进入靶场首页:
http://你的服务器IP
2. 初始账号密码
默认账号:
admin默认密码:
admin
首次登录后,建议立即修改默认密码,提升靶场安全性。
进入系统后,得到如下页面:
3. 自动拉取镜像
界面里显示Total 0,说明漏洞镜像还没同步 / 拉取到本地,这是 Vulfocus 刚启动时的正常状态,解决方法:
- 点左侧菜单里的 「镜像管理」(在场景管理上面那个)
- 进入后,点击右上角的 「同步镜像」 或 「更新镜像」(不同版本按钮文字略有差异)
- 等待同步完成(第一次同步可能要几分钟,看服务器网速)
- 同步完再回到「首页」,就能看到所有漏洞列表了
4. 手动拉取镜像/font>
如果自动拉取为空,那么我们也可以手动拉取:需要从 https://hub.docker.com/ 网站拉取镜像,或自己以tar包的形式上传。
(1)、在镜像管理中,添加功能
(2)、分别填入漏洞名称、镜像、rank、描述
- 镜像又分为文件和文本
- 文本:是从 https://hub.docker.com/u/vulfocus 官网拉取镜像。内容为如: vulfocus/webmin-cve_2019_15107
- 文件:本地漏洞镜像打成tar包的形式上传。
下载完成后点击启动即可。
(3)镜像启动后,会在环境里写入一个 flag (默认 flag 会写入 /tmp/ 下),读取到 flag 后填入 flag 窗口,镜像会自动关闭,如需重新启动,需强刷一下,然后再次点击启动即可。
5. 基础使用测试
登录后台后,可在漏洞列表中选择任意漏洞环境;
点击「启动环境」,等待10-30秒即可生成独立漏洞靶机;
- 渗透测试完成后,点击「销毁环境」,释放服务器资源,避免占用内存磁盘。
六、常用运维命令(必备)
日常靶场管理可直接复制使用以下命令:
# 停止靶场容器dockerstop vulfocus# 启动靶场容器dockerstart vulfocus# 重启靶场容器dockerrestart vulfocus# 查看靶场日志(排查报错)dockerlogs vulfocus# 删除靶场容器(重置环境)dockerrm-f$(dockerps-aq--filterancestor=vulfocus/vulfocus)七、常见报错与解决方案
问题1:镜像拉取超时,提示 Client.Timeout exceeded
原因:默认Docker官方源无法访问,国内老旧镜像源失效、冲突
解决:执行本文第三章的镜像加速配置,仅保留https://docker.1ms.run稳定源,重启Docker后重新拉取。
问题2:浏览器无法访问靶场页面
解决:
检查容器是否正常运行:
docker ps检查服务器防火墙,放行80端口;
云服务器需在控制台安全组放行80端口入站规则。
问题3:漏洞环境启动失败
解决:确认/var/run/docker.sock挂载成功,重启Docker和靶场容器即可修复。
八、搭建总结
Vulfocus 靶场部署的核心难点并非操作复杂,而是Docker镜像源超时问题。通过配置国内高可用加速源,可彻底解决99%的搭建失败问题。
整体流程:环境准备→修复镜像加速→拉取镜像→启动容器→访问使用。部署完成后,可随时随地进行漏洞复现、渗透测试练习,非常适合网安入门学习与日常技术实训。