WSL kali安装及无缝模式部署
Reference
windows 11 + kali wsl二合一配置步骤与踩坑_kex无缝模式使用指导-CSDN博客
前言
以往使用kali系统都是通过VMware虚拟机
最近偶然了解到wsl+无缝模式这种丝滑感拉满的方式
效果展示

部署wsl kali
下载 wsl kali
目前下载wsl版本的kali系统,最万无一失的方法即在微软商店下载
链接如下:Kali Linux - Free download and install on Windows | Microsoft Store
或者直接在本地微软商店搜索kali linux

移动至非系统盘
默认情况下,从微软商店下载的kali系统会放置在系统盘
但是后续为了体验完整的kali工具,我们至少要留出40GB以上的空间
为了维持windows系统的流畅程度,很显然不适合将wsl kali存储在系统盘中
首先执行如下指令查看wsl中kali系统的名称
1 | wsl -l -v |

执行wsl --shutdown
关闭wsl服务

导出kali镜像到指定位置
1 | wsl --export kali-linux <path_to_tar> |

从wsl注销系统盘上的kali系统
1 | wsl --unregister kali-linux |

最后在非系统盘的指定位置导入kali的镜像
1 | wsl --import kali-linux <path_to_kali> <path_to_tar> |
前一个路径为kali系统的存储路径,后一个为被导入的镜像的路径
配置默认登录用户
将默认登录用户为非root用户
1 | kali config --default-user r1ck |
安装工具包
升级软件包
使用kali
命令打开wsl kali
执行sudo apt update
更新软件包列表和元数据

执行sudo apt upgrade
升级所有已安装的软件包到最新版本
工具包的选择
此时的kali系统仍然只是一个轻量的原始Debian系统,不包含渗透工具,所以需要我们额外安装工具包
kali提供了不同量级的系统包,可以参照下表
工具包名称 | 内容 | 安装指令 | 磁盘占用大小 |
---|---|---|---|
kali-linux-default | 包含在标准 Kali Linux 安装中的默认工具包。适用于大多数用户。 | sudo apt install kali-linux-default |
9 GB |
kali-linux-large | 比默认包含更多的工具,适合那些需要额外工具进行扩展测试的高级渗透工程师。 | sudo apt install kali-linux-large |
16 GB |
kali-linux-everything | 包含 Kali Linux 可提供的所有工具。这个包非常庞大,适用于需要全套工具的专业用户。 | sudo apt install kali-linux-everything |
30 GB |
更多种类的系统工具包可以执行下面的指令查看
1 | sudo apt-cache search kali-linux |

当然后续我们还可以安装一些额外轻量的工具包,运行下面的命令可以进行查询
1 | sudo apt-cache search kali-tools |
通常我们执行sudo apt install kali-linux-default
安装默认工具包即可,该工具包中包含了图形化界面,这是后续无缝模式的基础
下载完default工具包后会进入图形安装界面。当安装过程提示选择时,全部默认执行”yes”即可

配置无缝模式
安装VcXsrv
安装Visual C++ Redistributable for Visual Studio 2015
下载链接:https://www.microsoft.com/en-US/download/details.aspx?id=48145
接下来安装VcXsrv
下载链接:https://sourceforge.net/projects/vcxsrv/
安装完毕后进入VcXsrv的安装目录,找到xlaunch.exe文件

双击打开,选择Multiple windows模式,Display number填0

选择 Start no client

把禁用访问控制勾选上

选择保存配置,导出到当前目录下

找到刚刚导出的文件config.xlaunch

创建它的快捷方式并发送到桌面,方便以后快速打开VcXsrv
双击快捷方式启动
此时托盘会出现图标

安装win-kex
打开wsl kali,输入如下命令安装win-kex
1 | sudo apt install kali-win-kex |
设置本机ip
在主机的终端中执行ipconfig
,查看最后一项 vEthernet (WSL (Hyper-V firewall))
的IP地址

将该IP地址记下
打开wsl kali,执行如下指令(最好在root权限下执行)
1 | 1.unlink /etc/resolv.conf |
<ip address>
处填上刚刚的IP地址
验证无缝模式
在wsl kali中执行如下命令
1 | kex --sl --wtstart -s |
如果终端中显示执行成功,且页面变成了kali和windows的混杂,则说明无缝模式启动成功
优化无缝模式的外观
隐藏kali桌面
默认的无缝模式下,kali系统的桌面也会显示出来
而我认为最完美的形式应该是只保留kali的菜单栏,这样可以从菜单栏中随时调用kali的工具
找到并点击菜单栏中的Session and Startup这一项

进入Current Session
一栏,将xfdesktop项的值改为Never
这样我们再次进入无缝模式时,就不会再显示kali的桌面了(这里显示的是windows的桌面,只不过我的windows用的kali的壁纸😝)

调整菜单栏
完成上一步的隐藏桌面后,你一定还是觉得这个菜单栏看着不太舒服,不仅在桌面上可能会挡图标,而且进入浏览器之后,会挡住最上方的关闭等按钮

这里我们只需调整一下菜单栏的外观
右键菜单栏,选择Panel菜单下的Panel Preferences

取消勾选Lock panel,并将长度调整为1000左右
此时上方的菜单栏便可通过拖动最左侧的区域来改变位置,一般来说拖到上方的正中央即可

最后我们可以适当增加一下菜单栏中的图标大小,效果如下

设置快捷启动方式
我们可以将启动无缝模式的命令整合到终端中
这样设置一个命令行模式和无缝模式,想用哪个用哪个
进入终端的设置,点击打开JSON文件

在profiles
项的list
中增加下面两项配置
1 | { |
注意记得修改一下启动目录中的用户名
这样我们的终端中就可以随时调用wsl kali的两种模式了
