如何在 WSL2 安装 kali 并安装图形桌面


如何在 WSL2 安装 kali 并安装图形桌面
kali官方并没有提供 WSL 版本的 kali, 而是提供了一个Microsoft Store 的链接
根据链接下载自动安装kali
为了WSL的系统不占用C盘空间,先将kali导出到D盘(句中kali-linux是wsl -l -v中显示的名字):

# 先停止 WSL
wsl --shutdown
# 将kali导出到D盘
wsl --export kali-linux D:\WSL\kali.tar
# 删除原来的kali
wsl --unregister kali-linux
# 从D盘导入新的
wsl --import kali-linux D:\WSL\kali D:\WSL\kali.tar --version 2
# 这样,新的 ext4.vhdx 就会存放在 D:\WSL\kali\ 下

开机,更新软件索引表:sudo apt update && sudo apt upgrade -y
安装最小的KDE 桌面(KDE Plasma):sudo apt install kali-desktop-kde -y

kali-desktop-kde 是 Kali 官方预配置的 KDE 桌面环境包,适合想要保持 Kali 风格的人。
kde-plasma-desktop 是标准 Debian 的 KDE Plasma 桌面。

同时 windows 系统下载: VcXsrv
(VcXsrv 是一个X server for Windows,它的作用是:让linux系统显示到 windows 桌面,没有这个,即使安装了 KDE Plasma 也显示不出来)
打开 VcXsrv, display number 要为 -1,然后,start no client,然后勾选「Disable access control」(方便测试,允许任何程序连接)

此时回到WSL终端,输入:
grep nameserver /etc/resolv.conf

此时应返回Ip,再把ip计入环境变量(0此为转发GUI的端口):
export DISPLAY=192.168.1.1:0
或者直接加入bash里:
echo 'export DISPLAY=$(grep nameserver /etc/resolv.conf | awk "{print \$2}"):0' >> ~/.bashrc
重启WSL,再启动 KDE Plasma: startplasma-x11
如果仍不显示GUI,再重复查上面的GUI端口:echo $DISPLAY
如果输出为空或者:0,都要重新设置:echo 'export DISPLAY=$(grep nameserver /etc/resolv.conf | awk "{print \$2}"):0' >> ~/.bashrc

设置完毕后,再启动 KDE Plasma: startplasma-x11
或者可以拿一些小型的应用来测试:
安装测试用的X Window System(X11)工具包:
sudo apt install x11-apps -y
xclock 此时应该弹出一个图形时钟的窗口,用于测试显示功能是否正常

如果没有显示,应该按上面的步骤再次检查转发端口,以及 VcXsrv 的设置

备注:
关于grep nameserver /etc/resolv.conf
此命令在真实主机上,是指远端的 DNS 服务器。而在 WSL,这是 wsl 的网关或者本机IP。WSL2 在 Windows 上运行时,会建立一个虚拟网络(像一台虚拟机一样)。Linux(WSL2)里的网络流量通过这个虚拟网卡经由 Windows 主机转发到外网。为了方便 DNS 解析,Windows 扮演了 DNS 转发/转接的角色,WSL2 的 /etc/resolv.conf 默认把 nameserver 指向这个 Windows 主机的虚拟网关。

此 resolv.conf 由 wsl 自动生成(开机重启会自动覆盖),如要自定义 nameserver,则:

  1. 编辑 /etc/wsl.conf,写入:
    [network]
    generateResolvConf = false
  2. 关闭所有 WSL 实例
  3. 重新启动 WSL,手动写入 /etc/resolv.conf:
    echo -e "nameserver 8.8.8.8\nnameserver 1.1.1.1" | sudo tee /etc/resolv.conf
    (现在不会被 WSL 自动覆盖了)

文章作者: Alan Work
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Alan Work !
  目录