安全实验室搭建指南:一台电脑搭出完整靶场环境

文章目录

    • 一、为什么你需要一台「自己的靶场」?
    • 二、先定架构:一张图看懂整体
    • 三、硬件与软件要求
      • [3.1 宿主机最低配置](#3.1 宿主机最低配置)
      • [3.2 虚拟化平台选型](#3.2 虚拟化平台选型)
      • [3.3 开启 CPU 虚拟化](#3.3 开启 CPU 虚拟化)
    • [四、Step 1:创建隔离网络](#四、Step 1:创建隔离网络)
      • [4.1 VirtualBox Host-Only 网络](#4.1 VirtualBox Host-Only 网络)
      • [4.2 网络模式怎么选?](#4.2 网络模式怎么选?)
    • [五、Step 2:部署攻击机 --- Kali Linux](#五、Step 2:部署攻击机 — Kali Linux)
      • [5.1 获取镜像](#5.1 获取镜像)
      • [5.2 创建 VM(若用 ISO 安装)](#5.2 创建 VM(若用 ISO 安装))
      • [5.3 装完必做:更新与基础工具](#5.3 装完必做:更新与基础工具)
      • [5.4 打快照](#5.4 打快照)
    • [六、Step 3:部署靶机 --- 三大入门标配](#六、Step 3:部署靶机 — 三大入门标配)
      • [6.1 Metasploitable 2(综合漏洞 Linux)](#6.1 Metasploitable 2(综合漏洞 Linux))
      • [6.2 DVWA(Web 漏洞靶场)](#6.2 DVWA(Web 漏洞靶场))
      • [6.3 Windows 漏洞靶机(练内网/域渗透进阶)](#6.3 Windows 漏洞靶机(练内网/域渗透进阶))
    • [七、Step 4:Docker 快速靶场(省内存利器)](#七、Step 4:Docker 快速靶场(省内存利器))
      • [7.1 安装 Docker](#7.1 安装 Docker)
      • [7.2 Vulhub --- 按 CVE 练漏洞](#7.2 Vulhub — 按 CVE 练漏洞)
      • [7.3 其他 Docker 靶场](#7.3 其他 Docker 靶场)
    • [八、Step 5:可选 --- 迷你蓝队环境](#八、Step 5:可选 — 迷你蓝队环境)
    • [九、推荐网络 IP 规划](#九、推荐网络 IP 规划)
    • 十、搭完后的「验收清单」
    • 十一、三种配置方案(按内存选)
      • [方案 A:轻量入门(16 GB 内存)](#方案 A:轻量入门(16 GB 内存))
      • [方案 B:标准练习(32 GB 内存)](#方案 B:标准练习(32 GB 内存))
      • [方案 C:域渗透进阶(32~64 GB)](#方案 C:域渗透进阶(32~64 GB))
    • 十二、注意点
      • [12.1 踩坑记录(真实 FAQ)](#12.1 踩坑记录(真实 FAQ))
      • [12.2 安全与合规底线](#12.2 安全与合规底线)
      • [12.3 资源下载速查](#12.3 资源下载速查)
      • [12.4 VirtualBox 常用命令(宿主机终端)](#12.4 VirtualBox 常用命令(宿主机终端))
      • [12. 5 最小 docker-compose 靶场示例](#12. 5 最小 docker-compose 靶场示例)
    • [十三、一台电脑靶场 核心记忆](#十三、一台电脑靶场 核心记忆)

一、为什么你需要一台「自己的靶场」?

很多人学安全的路径是这样的:

text 复制代码
看视频 → 装 Kali → 对着公网随便扫 → 被封 IP / 惹麻烦 → 放弃

问题不在工具,在于没有一块安全、可重置、可反复折腾的练习场

一块合格的本地靶场,应该满足:

需求 说明
合法 目标机器归你所有,或专为练习设计
可重复 搞坏了?恢复快照,5 分钟重来
够完整 至少有「攻击机 + 靶机 + 隔离网络」
可扩展 今天练 Web,明天练内网域渗透
不扰民 与日常上网、公司网络隔离

本文目标:用一台普通电脑,搭出一套能支撑 80% 入门~中级练习的靶场 ,总成本 0 元(全开源),半天可搭完。


二、先定架构:一张图看懂整体

text 复制代码
                    ┌─────────────────────────────────────┐
                    │         宿主机(你的电脑)            │
                    │  Windows / macOS / Linux            │
                    └─────────────────────────────────────┘
                                      │
                    ┌─────────────────┴─────────────────┐
                    │        虚拟化平台                    │
                    │  VMware / VirtualBox / Hyper-V     │
                    └─────────────────┬─────────────────┘
                                      │
          ┌───────────────────────────┼───────────────────────────┐
          │                           │                           │
   ┌──────┴──────┐            ┌───────┴───────┐           ┌───────┴───────┐
   │  攻击机      │            │  靶机 A       │           │  靶机 B       │
   │  Kali Linux │◄──ping────►│ Metasploitable│           │ DVWA / Win    │
   │  192.168.56.10│           │ 192.168.56.20 │           │ 192.168.56.30 │
   └─────────────┘            └───────────────┘           └───────────────┘
          │                           │                           │
          └───────────────────────────┴───────────────────────────┘
                              Host-Only 隔离网络
                         (192.168.56.0/24,不出公网)

核心原则:

  1. 攻击机 1 台:Kali(工具最全)
  2. 靶机 ≥ 2 台:Linux 漏洞机 + Web 漏洞环境
  3. 网络隔离 :Host-Only 或 Internal Network,不要把靶机桥接到家庭 WiFi
  4. 快照习惯:每台 VM 建完立刻打快照

三、硬件与软件要求

3.1 宿主机最低配置

项目 最低 推荐 说明
CPU 4 核 8 核+ 需支持虚拟化(Intel VT-x / AMD-V)
内存 16 GB 32 GB 同时开 3 台 VM 至少占 8~12 GB
硬盘 100 GB 空闲 256 GB+ SSD 每个靶机镜像 2~10 GB
系统 Win10+/macOS/Linux --- 本文三套方案均覆盖

3.2 虚拟化平台选型

平台 优点 缺点 推荐人群
VirtualBox 免费、跨平台、够用 性能略弱、快照慢 入门首选
VMware Workstation 性能好、快照快 收费(有 Player 免费版) 长期练习
Hyper-V Win 专业版内置 macOS 不可用 纯 Windows 用户
UTM macOS 友好 生态较小 M 系列 Mac

本文以 VirtualBox 为主演示(免费、全平台),VMware 操作类似。

3.3 开启 CPU 虚拟化

若 VM 创建失败或极卡,进 BIOS/UEFI 确认已开启:

  • Intel:Intel Virtualization Technology (VT-x)
  • AMD:SVM Mode

Windows 用户额外注意:若装了 Hyper-V、WSL2、Docker Desktop,可能与 VirtualBox 冲突,需二选一或改用 VMware。


四、Step 1:创建隔离网络

4.1 VirtualBox Host-Only 网络

text 复制代码
VirtualBox → 管理 → 全局设定 → 网络 → 添加 Host-Only 网络

推荐配置:
  网卡名称:vboxnet0
  IPv4:192.168.56.1
  掩码:255.255.255.0
  DHCP:可开启(自动分配 192.168.56.101~200)

4.2 网络模式怎么选?

模式 靶场用途 风险
Host-Only ✅ 推荐:仅宿主机与 VM 互通
Internal Network ✅ 多 VM 互访、宿主机不直连
NAT 靶机可上网更新,攻击机也可 中(误操作时)
桥接(Bridged) ❌ 靶机与局域网同网段 高,不推荐

建议组合:

  • 攻击机 Kali:NAT + Host-Only (既能 apt update,又能打靶)
  • 靶机:仅 Host-Only(完全隔离,更安全)

五、Step 2:部署攻击机 --- Kali Linux

5.1 获取镜像

官网:https://www.kali.org/get-kali/#kali-virtual-machines

推荐直接下载 Kali Linux VirtualBox / VMware 预构建镜像(省安装时间)。

版本 大小 说明
Kali 2024.x VirtualBox ~3 GB 开箱即用
Kali 2024.x ISO ~4 GB 需自己安装

默认账号:kali / kali(首次登录建议改密码)。

5.2 创建 VM(若用 ISO 安装)

text 复制代码
名称:Kali-Attacker
类型:Linux → Debian (64-bit)
内存:4096 MB(最低 2048)
硬盘:80 GB 动态分配
网络:
  网卡1 → NAT(上网)
  网卡2 → Host-Only (vboxnet0)

5.3 装完必做:更新与基础工具

bash 复制代码
sudo apt update && sudo apt full-upgrade -y
sudo apt install -y git curl wget nmap dirsearch seclists

验证网络:

bash 复制代码
# 能上网
ping -c 2 8.8.8.8

# 能看到 Host-Only 网段
ip a | grep 192.168.56

5.4 打快照

text 复制代码
快照名:clean-kali-2024
说明:全新更新完毕,未开始任何实验

养成习惯:每次实验前「恢复到 clean 快照 → 克隆或再快照 → 再开干」。


六、Step 3:部署靶机 --- 三大入门标配

6.1 Metasploitable 2(综合漏洞 Linux)

用途:练端口扫描、服务漏洞、Metasploit 基础、提权。

项目 说明
下载 SourceForge 搜 Metasploitable 2 或 Rapid7 官方
大小 ~800 MB
默认账号 msfadmin / msfadmin
已知问题 故意含大量漏洞,绝不能联网暴露

网络配置:

text 复制代码
仅 Host-Only → 192.168.56.20(可设静态 IP 或 DHCP)

第一个实验(在 Kali 上):

bash 复制代码
nmap -sV 192.168.56.20
# 应看到 FTP、SSH、Telnet、HTTP、MySQL、PostgreSQL 等大量开放端口

快照名:metasploitable2-clean


6.2 DVWA(Web 漏洞靶场)

用途:SQL 注入、XSS、CSRF、文件上传等 OWASP 经典漏洞。

方式 A:Docker 一键(推荐,轻量)

宿主机或 Kali 上安装 Docker 后:

bash 复制代码
docker run -d --name dvwa -p 8080:80 vulnerables/web-dvwa

浏览器访问:http://127.0.0.1:8080

默认:admin / password → 点 Create / Reset Database → 安全级别选 Low

方式 B:装成独立 VM

在 Ubuntu 22.04 上部署 LAMP + DVWA 源码,适合练「手工搭环境」。

方式 C:Metasploitable 2 内置

Metasploitable 2 已带 Mutillidae、Damn Vulnerable Web App 等,可一并练习。

网络注意:Docker 版在宿主机跑时,Kali 通过 Host-Only 访问宿主机 IP 的 8080 端口;纯隔离环境建议 Docker 也跑在 Kali 或单独 Linux 靶机内。


6.3 Windows 漏洞靶机(练内网/域渗透进阶)

用途:Active Directory、Kerberos、Windows 提权、BloodHound。

镜像 说明 资源占用
Metasploitable 3 多组件 Windows/Linux 场景
GOAD (Game of Active Directory) 域环境自动化搭建 高(需 16GB+ 内存)
Windows 10 评估版 + 故意弱配置 自建

入门可先跳过,等 Linux + Web 练熟再上。若内存 ≥ 32 GB,推荐 GOAD:

bash 复制代码
# GitHub: Orange-Cyberdefense/GOAD
# 使用 Vagrant + VirtualBox 一键起域环境

七、Step 4:Docker 快速靶场(省内存利器)

内存紧张时,不必所有靶场都开 VM,Docker 可快速起/毁:

7.1 安装 Docker

bash 复制代码
# Kali / Ubuntu
sudo apt install -y docker.io
sudo systemctl enable docker --now
sudo usermod -aG docker $USER
# 重新登录生效

7.2 Vulhub --- 按 CVE 练漏洞

bash 复制代码
git clone https://github.com/vulhub/vulhub.git
cd vulhub/struts2/s2-045   # 举例:Struts2 漏洞
docker compose up -d
# 访问 http://宿主机IP:8080
docker compose down -v     # 练完即毁

覆盖:Struts2、Shiro、Weblogic、Tomcat、Redis 未授权、ThinkPHP 等 100+ 场景

7.3 其他 Docker 靶场

项目 用途
vulnerables/web-dvwa DVWA
bkimminich/juice-shop OWASP Juice Shop 现代 Web
hacksploit/seccurecorp 小型综合场景
ctftraining/practitioner CTF 练习

Docker 靶场原则:练完 down -v,不要长期暴露端口。


八、Step 5:可选 --- 迷你蓝队环境

想同时练检测与响应,可在宿主机或单独 VM 加轻量组件:

text 复制代码
┌─────────────┐     日志/流量     ┌─────────────┐
│   靶机       │ ───────────────► │  ELK / Wazuh │
│  被攻击      │                  │  或 Security Onion │
└─────────────┘                  └─────────────┘
方案 内存需求 适合
Wazuh + Docker 4 GB+ 主机日志、简单告警
Elastic Stack (单节点) 8 GB+ 日志检索、可视化
Security Onion 16 GB+ 流量 + 日志一体

入门阶段不必强求,等红队基础打透后再加,避免一开始被 SIEM 配置拖垮。


九、推荐网络 IP 规划

text 复制代码
192.168.56.0/24  Host-Only 靶场网段

192.168.56.1     VirtualBox Host-Only 网关(宿主机)
192.168.56.10    Kali 攻击机(静态)
192.168.56.20    Metasploitable 2
192.168.56.30    Ubuntu-DVWA / Web 靶机
192.168.56.40    Windows 靶机(进阶)
192.168.56.50    域控 DC(GOAD 等)
192.168.56.100+  DHCP 池

Kali 设静态 IP 示例(/etc/network/interfaces 或 NetworkManager):

bash 复制代码
# 示例:Host-Only 网卡 eth1
sudo nmcli con mod "Wired connection 2" ipv4.addresses 192.168.56.10/24
sudo nmcli con mod "Wired connection 2" ipv4.method manual
sudo nmcli con up "Wired connection 2"

十、搭完后的「验收清单」

按顺序自测,全部通过 = 靶场可用:

text 复制代码
□ 1. Kali 能 ping 通 192.168.56.20(Metasploitable)
□ 2. nmap 扫描靶机,能看到 10+ 开放端口
□ 3. 浏览器访问 DVWA,能登录并改 Security Level
□ 4. Metasploit 能连上并 exploit 一个基础模块(如 vsftpd)
□ 5. 靶机无法 ping 通你手机/路由器(确认未桥接泄露)
□ 6. 每台 VM 都有 clean 快照,恢复测试通过
□ 7. (可选)Docker vulhub 起一个漏洞,访问后成功 down 掉

第一个完整实验建议:

text 复制代码
Kali → nmap 扫描 Metasploitable → msfconsole → exploit/unix/ftp/vsftpd_234_backdoor
→ 拿到 shell → whoami → 恢复快照重来

十一、三种配置方案(按内存选)

方案 A:轻量入门(16 GB 内存)

text 复制代码
Kali          4 GB
Metasploitable2  1 GB
DVWA (Docker)    512 MB
宿主机剩余       ≥ 10 GB

适合:端口扫描、基础 Web、Metasploit 入门。

方案 B:标准练习(32 GB 内存)

text 复制代码
Kali          4 GB
Metasploitable2  1 GB
Ubuntu + DVWA    2 GB
Windows 10 靶机  4 GB
Docker 漏洞栈    按需

适合:Web + 内网 + Windows 基础。

方案 C:域渗透进阶(32~64 GB)

text 复制代码
Kali          4 GB
GOAD 域环境    16~24 GB(DC + 多台成员机)

适合:AD 攻防、BloodHound、Kerberos 攻击。


十二、注意点

12.1 踩坑记录(真实 FAQ)

问题 原因 解决
VM 极卡 内存分太少 / 虚拟化未开 加 RAM、开 VT-x
Kali 不能上网 只配了 Host-Only 加 NAT 网卡
靶机 ping 不通 防火墙 / 网段不一致 ufw disable(仅靶场)、检查 IP
Metasploit exploit 失败 靶机 IP 变了 设静态 IP 或 DHCP 保留
Docker 端口访问不了 绑定 127.0.0.1 -p 0.0.0.0:8080:80
macOS M 芯片装 x86 VM 架构不兼容 用 ARM 版 Kali 或 UTM
搞完系统崩了 没打快照 恢复 clean 快照
杀毒软件报毒 靶机含恶意样本 靶场目录加白名单,别在生产机练

12.2 安全与合规底线

text 复制代码
✅ 可以做:
   · 本地 VM / Docker 隔离靶场内的任意测试
   · HackTheBox、TryHackMe 等授权平台
   · 自己拥有或有书面授权的系统

❌ 禁止做:
   · 扫描 / 攻击公网 IP、学校或公司内未授权机器
   · 把 Metasploitable 以桥接模式暴露到家庭路由器
   · 在靶场练成的 exploit 用于真实目标

靶场网络隔离不是可选项,是法律与道德底线。

12.3 资源下载速查

资源 地址
Kali 预构建 VM https://www.kali.org/get-kali/#kali-virtual-machines
VirtualBox https://www.virtualbox.org/wiki/Downloads
Metasploitable 2 SourceForge / Rapid7 官方
DVWA 源码 https://github.com/digininja/DVWA
Vulhub https://github.com/vulhub/vulhub
GOAD 域环境 https://github.com/Orange-Cyberdefense/GOAD
Juice Shop https://github.com/juice-shop/juice-shop

12.4 VirtualBox 常用命令(宿主机终端)

bash 复制代码
# 列出 VM
VBoxManage list vms

# 启动 / 关闭
VBoxManage startvm "Kali-Attacker" --type headless
VBoxManage controlvm "Kali-Attacker" poweroff

# 快照
VBoxManage snapshot "Metasploitable2" take clean-base
VBoxManage snapshot "Metasploitable2" restore clean-base

# 查看 Host-Only 网络
VBoxManage list hostonlyifs

12. 5 最小 docker-compose 靶场示例

保存为 lab-dvwa-compose.yml

yaml 复制代码
services:
  dvwa:
    image: vulnerables/web-dvwa
    ports:
      - "8080:80"
    restart: unless-stopped
bash 复制代码
docker compose -f lab-dvwa-compose.yml up -d
# 练完
docker compose -f lab-dvwa-compose.yml down -v

十三、一台电脑靶场 核心记忆

text 复制代码
┌────────────────────────────────────────────────────────────┐
│  一台电脑靶场 核心记忆                                       │
├────────────────────────────────────────────────────────────┤
│  攻击机:Kali(NAT + Host-Only)                             │
│  靶  机:Metasploitable 2 + DVWA(Host-Only 隔离)           │
│  加速器:Docker + Vulhub(按 CVE 即练即毁)                   │
│  进  阶:Windows / GOAD 域环境(32GB+ 内存)                 │
│  习  惯:快照 · 隔离 · 不碰未授权目标                         │
└────────────────────────────────────────────────────────────┘
相关推荐
量子罐头1 小时前
光润通发布LYSH-LAN-V1.0家庭版智能安全路由器 主打国密级硬件加密
网络·安全·智能路由器
Yofune安全研究1 小时前
《邮件钓鱼攻防工程》Part 1:从 GoPhish 的天花板谈起
安全
你觉得脆皮鸡好吃吗2 小时前
OAuth学习 下
网络·安全·web安全·网络安全学习
NOVAnet20232 小时前
SaaS 化 MDR 安全运营平台技术架构解析:态势感知、关联研判与自动化响应实践
安全·架构·自动化
bu_shuo2 小时前
电脑桌面出现查找工具
电脑·笔记本电脑·资源管理器
飞斯柯罗2 小时前
[飞斯柯罗] 想了解什么是网络安全资产和 KMS?
网络·安全·web安全
运维大师2 小时前
【安全与故障排查】06-【复盘】生产数据库删库事故:RTO4小时恢复纪实
数据库·安全
wjql23 小时前
手机远程控制电脑用什么软件好 手机怎么连接电脑
智能手机·电脑
带娃的IT创业者12 小时前
突破算力与安全的边界:深度解析 Mythos AI 的“受信发布”机制与技术影响
人工智能·安全·大语言模型·ai安全·mythos ai·受信发布·ai监管