通过 Apple 容器在 macOS 上本地运行 Kali Linux

Enda

得益于 Apple 在 WWDC 2025 上推出的新容器化框架,Kali Linux 现在可以在 macOS 上原生运行。这是在 macOS 上原生支持开发人员和安全工作流程的更广泛举措的一部分,无需 Docker Desktop 或第三方虚拟机管理程序。

该功能目前在 macOS Sequoia 15.5 中可用,并将完全集成在 macOS“Tahoe”26 中,允许 Apple Silicon Mac 在轻量级安全虚拟机中运行符合 OCI 的 Linux 发行版,例如 Kali Linux。

什么是 Apple 容器化? 

Apple 的容器系统在概念上与 Windows Subsystem for Linux 2 (WSL2) 类似。这个新工具简称为 Container,是一个命令行界面,旨在与 Apple 的新容器化框架配合使用。

在底层,它使用 Apple 的 Virtualization.framework 和 Hypervisor.framework 为每个容器启动一个微型虚拟机 (VM),提供强大的隔离、快速启动和熟悉的 Docker 风格体验 - 所有这些都使用本机 macOS 组件。然而,关键区别在于每个容器都有自己的安全虚拟机,提供更好的安全边界。

该堆栈由以下部分组成:

  • 容器:用户与之交互的命令行界面。
  • 集装箱化:管理容器并连接到 macOS 虚拟化 API 的框架。
  • 框架:创建 VM。
  • 框架:与 macOS 内核对话以处理 VM 执行。

如何在 macOS 上运行 Kali Linux

首先,您需要在 Apple Silicon (arm64) 上运行 macOS Sequoia 15.5 或更高版本的计算机上通过 Homebrew 安装 CLI 工具,并初始化 Apple 的容器框架。

酿造安装-木桶容器

容器系统启动

参见:[最新] 如何在没有管理员密码的情况下将Linux安装到Windows 10/7

然后,使用以下命令在容器中运行 Kali Linux:

容器运行 –rm -it kalilinux/kali-rolling 

第一次启动容器系统时,它会安装一个最小的 Kata Containers 内核,该内核在虚拟机内部使用。完成后,您将进入功能齐全的 Kali Linux shell,其中包含最新的 Linux 内核 - 准备进行渗透测试或开发。

您还可以使用以下命令将 macOS 工作目录挂载到容器中:

容器运行 –remove –interactive –tty –volume $(pwd):/mnt –workdir /mnt docker.io/kalilinux/kali-rolling:latest

此命令允许 Kali 直接从 Mac 读取/写入文件。

已知限制 

虽然该功能很有前途,但仍处于开发者预览阶段,并且有一些警告,例如 macOS Sequoia 15 中的网络接口问题:容器可能无法获取 IP 地址或失去 DNS 访问权限。

Kali 的开发团队已经承认这些限制,建议用户参考 Apple 的文档进行故障排除。

“目前容器化存在一些已知的限制,尤其是使用 macOS“Sequoia”15,例如容器的网络访问无法获取 IP 地址或无法访问网络。如果您遇到这些问题,我们建议您阅读并遵循 Apple 的建议,”写了Kali Linux 团队在博客文章中提到。

最后的想法

Apple 的新容器化标志着在 macOS 上原生支持 Linux 工作流程的重大转变,提供接近原生的性能和比 Docker 或重型虚拟机更好的隔离,从而缩小 Mac 硬件和 Linux 工具之间的差距。