Kasm 介绍
Kasm 是一款基于 Docker 的容器应用平台,它提供企业级编排、数据丢失防护和 Web 流技术,以支持将容器化工作负载交付到你的浏览器。
Kasm 可以在浏览器內运行各种应用,比如:Linux 桌面、浏览器、聊天工具、办公软件、多媒体工具等。
Kasm 将这些应用隔离在独立的 Docker 容器内,在里面做的任何行为不会影响真实的主机,并且具备一次性特点、用完即删,保证了数据的安全性。
Kasm 是个开源项目,你可以在个人及非营利条件下免费使用。
Kasm官方网站: https://www.kasmweb.com/Kasm Github: https://github.com/kasmtech
简单来说 Kasm 可以让用户在浏览器(即开即用)使用各种(容器化)的软件和操作系统。

Kasm 支持常用的主流浏览器:Chrome、Edge、FireFox、Tor 等。

Kasm 支持常用的 Linux 桌面:Ubuntu、CentOS、OPenSUSE、Kali Linux 等。
Kasm 优点:
- 支持受隔离保护的浏览器
- 支持受隔离保护的
Linux桌面 - 支持受隔离保护的多种应用
- 在数秒间快速启动应用
- 使用完毕瞬间删除应用,不留痕迹
- 容器闲置超过指定时间自动删除应用,不留痕迹
Kasm 缺点:
- 目前中文支持不友好,在部分应用内没有中文输入法。
下表我们将比较下几种常用虚拟化服务 VM、Docker、Kasm 间的区别
| VM | Docker | Kasm |
|---|---|---|
| 虚拟操作系统 | 虚拟容器 | 虚拟容器 |
| 硬件资源占用率高 | 👑硬件资源占用率最低 | 硬件资源占用率较低 |
| 需要安装专用应用程序 | 使用终端程序,图形操作不友好 | 👑使用网页浏览器,介面友好 |
| 安装操作系统耗时 | 部署容器快速 | 👑鼠标一键瞬间启动,支持多任务 |
| 虚拟机内的浏览器会储存 Cookie,无法达到完全的隐匿性 | 虽然可透过删除容器及重新部署来达到即开即用,但步骤较为繁琐 | 👑应用的启动或删除只需鼠标点击,真正实现即开即用。 |
| 👑中文支持度高 | 中文支持度低 | 中文支持度低 |
部署 Kasm
- 硬件要求
| 硬件类型 | 配置规格 |
|---|---|
| CPU | 2 cores |
| Memory | 4GB |
| Storage | 50GB (SSD) |
- 操作系统要求
| 支持的操作系统 |
|---|
| Ubuntu 18.04 / 20.04 / 22.04 (amd64/arm64) |
| Debian 9 / 10 / 11 (amd64/arm64) |
| CentOS 7 / 8 (amd64/arm64) |
| Oracle Linux 7 / 8 (amd64/arm64) |
| Raspberry Pi OS (Debian) 10 / 11 (arm64) |
| Other |
Kasm 部署还是很容易的,基本只需执行以下几条命令:
1 | $ cd /tmp |
执行完成后,安装脚本会询问『是否接受协议』和『是否启用交换分区』。你可以根据实际情况回答,当然协议是必须接受的。

默认情况下,Kasm 安装脚本会去 Github 下载 Docker-Compose V2 的执行文件。如果你的网络环境不能正常访问 Github,安装脚本就无法正常执行。
这时你可以提前使用以下命令,先手动完成 Docker-Compose V2 的安装:
1 | $ curl -L https://download.fastgit.org/docker/compose/releases/download/v2.5.0/docker-compose-linux-x86_64 -o /usr/local/lib/docker/cli-plugins/docker-compose |
然后,等待脚本拉取完相应的 Docker 镜像。首次下载的镜像比较多,需要一定时间,请耐心等待。

最后,脚本安装完成后,会生成 Kasm 各组件默认的认证信息。(只显示一次,请注意保存。)

注意:默认情况下,
Kasm Web应用程序是运行在 443 端口的,你需要在防火墙上对外开放此端口。如果你想在其他端口上运行Kasm Web应用程序,可在调用安装程序时通过-L参数指定。例如:sudo bash kasm_release/install.sh -L 8443
更详细官方安装教程可以查看:Standard Installation。
上面的方法是将所有 Kasm 服务组件部署到同一台机器上的。当然,你也可以将不同的 Kasm 服务角色分开安装到不同机器。具体可以参考: Multi Server Installation
访问 Kasm
默认情况下,你可以使用 https://server_ip 访问的 Kasm 的 Web 页面。
登陆信息就是上面安装过程中自动生成的默认凭据。

Kasm 内置了很多常用的应用:

现在,我们来启动一个 Chrome 试试:

点击一下图标后,就秒启动完成一个全新的 Chrome 环境。

你还可以点击左面的键头图标,来使用一些辅助功能。比如:启用声音、剪贴板等。

简单体验了下,各种输入输出都很快,播放视频也是非常流畅的。接下来,再启动一个 Ubuntu 看看:



太赞了,Linux 桌面应用,运行起来也是一样的丝般顺滑。
Kasm 的强大功能远远不止这些,它还支持多用户、LDAP、OpenID 等三方认证、自定义容器应用等高级功能。有兴趣的同学可以到官网自行探索哟!