Windows 上用 WSL 安装 Kali Linux 并搭建渗透测试环境(2026 版)

Windows 上用 WSL 安装 Kali Linux 并搭建渗透测试环境(2026 版)

title: "Windows 上用 WSL 安装 Kali Linux 并搭建渗透测试环境(2026 版)"
date: 2026-05-18
categories: [Kali, WSL, 渗透测试]
tags: [Kali Linux, WSL, 渗透测试, 工具安装]
image: kali_wsl_demo.png

🐉 Windows 上用 WSL 安装 Kali Linux 并搭建渗透测试环境

为什么选择 WSL 版 Kali?

传统的 Kali 安装方式有两种:实体机双系统、VMware/VirtualBox 虚拟机。但都有痛点:

  • 双系统:切换麻烦,日常办公不方便
  • 虚拟机:性能损耗大,共享文件麻烦,网络配置复杂

WSL(Windows Subsystem for Linux) 完美解决了这些问题:

🏆 WSL vs VM 虚拟机全方位对比

对比项 VMware/VirtualBox 虚拟机 WSL2
启动速度 30秒~1分钟 1秒启动
内存占用 固定分配 2-4GB 动态占用,闲置时 ~200MB
CPU 性能 有虚拟化损耗(约 5-10%) 接近原生(Hyper-V 半虚拟化)
磁盘占用 完整系统 10-20GB+ 精简安装仅 2-3GB
文件共享 拖拽/共享文件夹(慢且不稳定) 直接访问 Windows 盘符(/mnt/c/)
网络 NAT/桥接配置复杂,经常断连 自动 NAT,127.0.0.1 直通 Windows
剪贴板共享 需要装增强工具 默认共享
GPU 加速 需要复杂配置 Windows 侧运行即可
系统资源 固定分配(不够用会卡) 动态分配,不挤占 Windows
快照/回滚 ✅ 支持 ❌ 可用 wsl –export/–import
桌面环境 ✅ 完整图形界面 ❌ 无图形(CLI 足够渗透测试)
日常办公切换 全屏切换不便 Alt+Tab 无缝切换

为什么选 WSL?

  1. 启动快wsl -d kali-linux 命令执行到进入 shell 不到 1 秒,不像 VM 还要等系统启动
  2. 省资源 — 虚拟机固定吃你 2-4GB 内存,WSL 用多少占多少,Windows 这边还能打游戏/写代码
  3. 文件原生互通cd /mnt/d/tools/ 直接访问 Windows D 盘,不用折腾共享文件夹
  4. 网络更简单 — 自动 NAT,Windows 127.0.0.1 能直接访问 WSL 里的服务(比如 Kali 里起的 Web 服务)
  5. 无缝切换 — Alt+Tab 切回 Windows 办公,渗透和日常互不干扰

一句话:WSL 版 Kali ≈ 原生 Linux 性能 + Windows 无缝集成,省掉一台虚拟机占用的资源。

什么情况还是需要 VM?

  • 需要 完整图形界面(Wireshark 带图形、BurpSuite 界面等 — 但可以跑在 Windows 原生)
  • 需要 Windows 和 Linux 完全隔离(WSL 文件系统在同一个 Windows 盘下)
  • 需要 内核模块编译 或自定义内核
  • 需要 VM 快照功能 频繁做实验快照回滚

不过对于渗透测试 90% 的 CLI 操作(扫描、爆破、漏洞利用),WSL 完全够用。

一、安装 WSL2

1.1 开启 WSL

Windows 10 2004+ / Windows 11

以管理员身份打开 PowerShell 或 CMD:

# 一键安装 WSL(默认安装 Ubuntu)
wsl --install

如果你已经装过 WSL,确保是 WSL2:

# 查看 WSL 版本
wsl -l -v

# 如果版本是 1,升级到 2
wsl --set-version <distro> 2

# 设置 WSL2 为默认
wsl --set-default-version 2

1.2 安装 Kali Linux

# 查看可用的 Linux 发行版
wsl --list --online

# 安装 Kali Linux
wsl --install -d kali-linux

安装完成后会提示设置用户名和密码,按提示输入即可。

1.3 验证安装

# 查看已安装的发行版
wsl -l -v

# 输出示例:
#   NAME          STATE           VERSION
# * kali-linux    Running         2

1.4 启用 systemd(Kali 必须)

WSL 默认不使用 systemd,但 Kali 的很多服务(如 SSH、frpc 等)依赖它:

编辑或创建 %USERPROFILE%\.wslconfig

[wsl2]
kernelCommandLine = systemd=true

或者在 WSL 内部创建 /etc/wsl.conf

sudo bash -c 'cat > /etc/wsl.conf << EOF
[boot]
systemd=true
EOF'

然后在 PowerShell 中重启 WSL:

wsl --shutdown
wsl -d kali-linux

二、Kali 基础配置

2.1 更新系统

sudo apt update && sudo apt upgrade -y

2.2 安装 Kali 工具集

WSL 版 Kali 默认是精简安装,只有基础系统,需要自己装工具。

你可以选择安装不同的工具集:

# ⭐ 推荐:安装 headless 无图形版工具集(8GB+,推荐首次装这个)
# 包含 Nmap、Metasploit、Hydra、John、SQLMap、Gobuster、Dirb 等常用工具
sudo apt install -y kali-linux-headless

kali-linux-headless 是 Kali 的无头版工具集,包含了绝大部分 不依赖图形界面 的渗透测试工具,大概是 200+ 个包,总共约 8GB。对于 CLI 操作来说,装了它基本就不用一个个单独装了。

如果不想装这么大一套,也可以按需选择:

# 仅核心工具(极小安装)
sudo apt install -y kali-linux-core

# 按需安装常用工具
sudo apt install -y nmap metasploit-framework exploitdb \
    hydra john sqlmap gobuster dirb wfuzz \
    ffuf nuclei

# Python 工具
sudo apt install -y python3-pip python3-venv sshpass

💡 善用 apt 补装:WSL 的优势就是想到用什么工具,直接 apt install 就行,不需要像 VM 一样预先装好所有东西。

# 查某个工具在哪个包里
apt search nmap

# 查看已安装的 kali 工具集
apt list --installed | grep kali

2.3 设置 root 密码

为了后续方便,设置 root 密码并允许 SSH root 登录:

sudo passwd root
# 输入密码:kali

# 允许 root SSH 登录
echo "PermitRootLogin yes" | sudo tee -a /etc/ssh/sshd_config
echo "PasswordAuthentication yes" | sudo tee -a /etc/ssh/sshd_config
sudo systemctl restart ssh

三、安装 Spring Boot 渗透测试工具

以下是在 Kali WSL 上搭建 Spring Boot 专项测试工具的完整过程。

3.1 SBSCAN — Spring Boot 综合扫描

cd ~
git clone --depth 1 https://github.com/sule01u/SBSCAN.git
cd SBSCAN

# 创建虚拟环境
python3 -m venv venv
source venv/bin/activate

# 安装依赖
pip install click requests urllib3 colorama tqdm rich

# 测试
python3 sbscan.py -h

⚠️ Kali 2025+ 使用 Python 3.13,部分旧版依赖需要升级安装,不要直接用 requirements.txt:

pip install --break-system-packages urllib3>=2.0 requests>=2.31.0

使用示例:

# 扫描单个目标
python3 sbscan.py -u http://target.com

# 批量扫描 + 指纹过滤
python3 sbscan.py -f urls.txt --fingerprint_filter

# 只扫 CVE 漏洞
python3 sbscan.py -f urls.txt -m cve --quiet

3.2 heapdump_tool — JVM 堆文件密码提取

cd ~
git clone --depth 1 https://github.com/wyzxxz/heapdump_tool.git
cd heapdump_tool

注意:该仓库仅包含文档,实际 JAR 文件需要从飞寄盘下载: https://share.feijipan.com/s/dFAuqYQy

下载后放到 ~/heapdump_tool/ 目录,确保已安装 JDK:

sudo apt install -y default-jdk
java -jar heapdump_tool.jar heapdump文件

交互式查询示例:

>>> password
>> spring.datasource.password → test@wyzxxz

>>> accesskey
>> accessKey → LTAI**************

>>> shirokey
>> kPH+bIxk5D2deZiIxcaaaA==

>>> class=redis
  → RedisServer: redis://10.0.0.5:6379
  → password: Redis@2024!Secret

3.3 Nuclei — 模板化漏洞扫描器

sudo apt install -y nuclei
nuclei -version
# Nuclei Engine Version: v3.7.1

# 更新模板
nuclei -update-templates

3.4 其他 Spring Boot 工具(Windows 侧)

以下工具我们放在 Windows D 盘方便跨环境使用:

# D:\tools\springboot-pentest\ 目录下
# ├── SpringBoot-Scan
# ├── jolokia-exploitation-toolkit  
# ├── Spring-Boot-Actuator-Exploit
# └── springbooter

cd /mnt/d/tools/springboot-pentest/SpringBoot-Scan
python3 SpringBoot-Scan.py -u http://target.com

四、配置 SSH 远程访问

4.1 开启 SSH 服务

sudo apt install -y openssh-server
sudo systemctl enable ssh
sudo systemctl start ssh

4.2 配置 frp 内网穿透

通过 WSL 安装的 Kali 默认在 NAT 网络下,外部无法直接访问。我们可以用 frp 做隧道穿透:

下载 frpc:

cd /tmp
# 如果 GitHub 下载慢,使用镜像
wget https://ghproxy.net/https://github.com/fatedier/frp/releases/download/v0.67.0/frp_0.67.0_linux_amd64.tar.gz
tar xzf frp_0.67.0_linux_amd64.tar.gz
sudo cp frp_0.67.0_linux_amd64/frpc /usr/local/bin/
sudo mkdir -p /etc/frp
rm -rf frp_0.67.0_linux_amd64*

配置 frpc(/etc/frp/frpc.toml):

serverAddr = "你的服务器IP"
serverPort = 7000
auth.token = "你的token"

[[proxies]]
name = "ssh-tcp"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 6003

配置 systemd 服务(/etc/systemd/system/frpc.service):

[Unit]
Description=Frp Client Service
After=network.target

[Service]
Type=simple
User=root
Restart=on-failure
RestartSec=5
ExecStart=/usr/local/bin/frpc -c /etc/frp/frpc.toml

[Install]
WantedBy=multi-user.target

启动并设置开机自启:

sudo systemctl daemon-reload
sudo systemctl enable frpc
sudo systemctl start frpc
sudo systemctl status frpc

从外网连接:

ssh root@你的服务器IP -p 6003

五、常见问题

5.1 WSL 网络不通/apt 更新慢

# 使用国内镜像源
sudo sed -i 's/httpredir.debian.org/mirrors.ustc.edu.cn/g' /etc/apt/sources.list

# 或者直接修改为清华源
sudo sed -i 's/kali.download/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list

5.2 GitHub 下载慢

使用镜像代理:

# 在 URL 前加 ghproxy.net
git clone https://ghproxy.net/https://github.com/user/repo.git

# 或使用 wget
wget https://ghproxy.net/https://github.com/xxx/xxx.tar.gz

5.3 Python pip 安装报错

Kali 2025+ 限制系统 pip 直接装包:

# 方式一:使用虚拟环境(推荐)
python3 -m venv myenv
source myenv/bin/activate
pip install 包名

# 方式二:强制安装(不推荐)
pip install --break-system-packages 包名

5.4 frp 代理注册成功但连不上

如果 frpc 日志显示登录成功、代理注册成功,但外网连不上:

  1. 确认 frps 服务器防火墙 没有屏蔽代理端口

  2. frpc 0.50+ 默认启用 TLS,如果 frps 没配 TLS 要在 frpc 配置中加:

    transport.tls.enable = false
  3. 检查 transport.tcpMux 配置在 frpc 和 frps 两端一致

六、总结

通过 WSL 安装 Kali Linux 是当前最便捷的渗透测试环境搭建方案。与 VMware 虚拟机相比,WSL 的启动速度、资源占用、文件共享体验都有明显优势

我们在这个环境中集成了:

工具 用途 安装方式
SBSCAN Spring Boot 综合扫描 git clone
heapdump_tool JVM 堆文件密码提取 git + JAR 下载
nuclei 模板化漏洞扫描 apt install
Nmap/Metasploit 传统渗透测试 apt install
frp 内网穿透 手动下载

本文所有操作均在 Windows 11 + WSL2 + Kali Linux 环境下测试通过。工具仅用于合法授权的安全测试,请勿用于非法用途。

附录:WSL 常用命令速查

# 查看所有发行版
wsl -l -v

# 启动指定发行版
wsl -d kali-linux

# 以指定用户登录
wsl -d kali-linux -u root

# 关闭所有 WSL
wsl --shutdown

# 导出/导入
wsl --export kali-linux kali.tar
wsl --import kali-linux-new D:\wsl\kali kali.tar

# 卸载
wsl --unregister kali-linux
© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容