Project Icon

KasmVNC

现代化的基于浏览器的远程桌面访问工具 突破传统VNC限制

KasmVNC是一款突破传统VNC限制的远程桌面访问工具。它支持通过现代浏览器直接访问,无需安装专门客户端。采用YAML配置方式,易于管理。新增WebRTC传输、数据防泄漏等功能,提升了安全性和效率。KasmVNC适合需要安全高效远程访问的场景,可单独使用或集成到Kasm Workspaces平台。

KasmVNC - Linux网页远程桌面

KasmVNC提供基于网页的远程桌面或应用程序访问。虽然名称中包含VNC,但KasmVNC与TigerVNC、RealVNC和TurboVNC等其他VNC变体不同。为了支持现代技术并提高安全性,KasmVNC突破了定义VNC的RFB规范。用户可以通过任何现代浏览器访问KasmVNC,不支持传统的VNC查看器应用程序。KasmVNC在服务器和用户级别使用现代的基于YAML的配置,便于管理。

Kasm Technologies开发了Kasm Workspaces,一个容器化流媒体平台。Kasm开源了Workspace docker镜像,其中包括容器化的完整桌面和应用程序以及基础镜像,供开发人员创建定制的流媒体容器。这些容器可以单独使用,也可以在Kasm Workspaces平台中使用,该平台提供完整的企业级功能集。

文档

请勿使用master分支的README,除非您正在从master分支的最新版本自行编译KasmVNC。请使用特定版本的文档。

对于1.0.0版本之前的测试版,请使用该版本标记提交中的GitHub项目README。

安装

安装后必须断开并重新连接服务器,才能应用组成员身份。

Debian/Ubuntu/Kali

# 请在此处选择适用于您的发行版的软件包(在Assets下):
# https://github.com/kasmtech/KasmVNC/releases
wget <package_url>

sudo apt-get install ./kasmvncserver_*.deb

# 将您的用户添加到ssl-cert组
sudo adduser $USER ssl-cert

Oracle 8

# 请在此处选择适用于您的发行版的软件包(在Assets下):
# https://github.com/kasmtech/KasmVNC/releases
wget <package_url>

# 确保KasmVNC依赖项可用
sudo dnf config-manager --set-enabled ol8_codeready_builder
sudo dnf install oracle-epel-release-el8

sudo dnf localinstall ./kasmvncserver_*.rpm

# 将您的用户添加到kasmvnc-cert组
sudo usermod -a -G kasmvnc-cert $USER

CentOS 7

# 请在此处选择适用于您的发行版的软件包(在Assets下):
# https://github.com/kasmtech/KasmVNC/releases
wget <package_url>

# 确保KasmVNC依赖项可用
sudo yum install epel-release

sudo yum install ./kasmvncserver_*.rpm

# 将您的用户添加到kasmvnc-cert组
sudo usermod -a -G kasmvnc-cert $USER

入门指南

以下示例提供了使用提供的工具进行KasmVNC基本使用的方法。有关所有实用程序和运行时环境的完整文档,请参阅我们的KasmVNC文档

# 启动会话并指导您设置用户并选择默认桌面环境
vncserver

# 使用mate桌面环境启动会话
vncserver -select-de mate

# 添加具有读/写权限的新用户
vncpasswd -u my_username -w -r

# 查看日志
tail -f ~/.vnc/*.log

# 获取当前会话及其显示ID列表
vncserver -list

# 终止显示ID为:2的VNC会话
vncserver -kill :2

配置

KasmVNC通过基于YAML的配置进行配置。服务器级配置位于/etc/kasmvnc/kasmvnc.yaml。对此文件的编辑适用于所有用户。单个用户可以通过在其配置文件~/.vnc/kasmvnc.yaml中指定来覆盖服务器全局配置。

以下配置显示了所有默认设置。许多编码设置可以被客户端覆盖,除非runtime_configuration.allow_client_to_override_kasm_server_settings设置为false。默认情况下,允许客户端修改编码设置。

有关每个设置的完整描述,请参阅配置参考

desktop:
  resolution:
    width: 1024
    height: 768
  allow_resize: true
  pixel_depth: 24
  gpu:
    hw3d: false
    drinode: /dev/dri/renderD128

network:
  protocol: http
  interface: 0.0.0.0
  websocket_port: auto
  use_ipv4: true
  use_ipv6: true
  udp:
    public_ip: auto
    port: auto
    stun_server: auto
  ssl:
    pem_certificate: /etc/ssl/certs/ssl-cert-snakeoil.pem
    pem_key: /etc/ssl/private/ssl-cert-snakeoil.key
    require_ssl: true

user_session:
  new_session_disconnects_existing_exclusive_session: false
  concurrent_connections_prompt: false
  concurrent_connections_prompt_timeout: 10
  idle_timeout: never

keyboard:
  remap_keys:
  ignore_numlock: false
  raw_keyboard: false

pointer:
  enabled: true

runtime_configuration:
  allow_client_to_override_kasm_server_settings: true
  allow_override_standard_vnc_server_settings: true
  allow_override_list:
    - pointer.enabled
    - data_loss_prevention.clipboard.server_to_client.enabled
    - data_loss_prevention.clipboard.client_to_server.enabled
    - data_loss_prevention.clipboard.server_to_client.primary_clipboard_enabled
日志记录:
  日志写入器名称: all
  日志目标: 日志文件
  级别: 30

安全:
  暴力破解保护:
    黑名单阈值: 5
    黑名单超时: 10

数据丢失防护:
  可见区域:
    # 上: 10
    # 左: 10
    # 右: 40
    # 下: 40
    隐藏区域:
      允许点击按下: false
      允许点击释放: false
  剪贴板:
    操作间延迟: 无
    允许的MIME类型:
      - chromium/x-web-custom-data
      - text/html
      - image/png
    服务器到客户端:
      启用: true
      大小: 无限制
      主剪贴板启用: false
    客户端到服务器:
      启用: true
      大小: 无限制
  键盘:
    启用: true
    速率限制: 无限制
  日志记录:
    级别: 关闭

编码:
  最大帧率: 60
  全帧更新: 无
  矩形编码模式:
    最小质量: 7
    最大质量: 8
    考虑无损质量: 10
    矩形压缩线程: 自动

  视频编码模式:
    JPEG质量: -1
    WebP质量: -1
    最大分辨率:
      宽度: 1920
      高度: 1080
    进入视频编码模式:
      时间阈值: 5
      面积阈值: 45%
    退出视频编码模式:
      时间阈值: 3
    日志记录:
      级别: 关闭
    缩放算法: 渐进式双线性

  比较帧缓冲: 自动
  ZRLE Zlib级别: 自动
  Hextile改进压缩: true

服务器:
  HTTP:
    头部:
      - Cross-Origin-Embedder-Policy=require-corp
      - Cross-Origin-Opener-Policy=same-origin
    HTTPD目录: /usr/share/kasmvnc/www
  高级:
    X字体路径: 自动
    Kasm密码文件: ${HOME}/.kasmpasswd
    X权限文件: 自动
  自动关闭:
    无用户会话超时: 永不
    活跃用户会话超时: 永不
    非活跃用户会话超时: 永不

命令行:
  提示: true

新功能!

  - 更快的JPEG压缩(通过静态链接libjpeg-turbo)
  - WebP图像压缩以更好地利用带宽
  - 根据服务器CPU可用性自动混合WebP和JPEG
  - 多线程图像编码,为多核服务器提供更流畅的帧率
  - WebRTC UDP传输
  - 用于本地局域网的无损QOI图像格式
  - 全屏视频检测,进入可配置的视频模式以获得更好的全屏视频播放性能
  - 基于屏幕变化率的动态JPEG/WebP图像压缩质量设置
  - 无缝剪贴板支持(在基于Chromium的浏览器上)
  - 支持文本、图像和格式化文本的二进制剪贴板(在基于Chromium的浏览器上)
  - 允许客户端设置/更改大多数配置设置
  - 数据丢失防护功能
    - 按键记录
    - 剪贴板记录
    - 上下行剪贴板传输最大大小
    - 剪贴板操作之间所需的最小时间
    - 键盘输入速率限制
    - 屏幕区域选择
  - 发布版中包含适用于Debian、Ubuntu和Kali Linux的Deb软件包
  - 适用于CentOS、Oracle、OpenSUSE、Fedora的RPM软件包。RPM软件包目前无法更新且未发布,但您可以构建和安装它们。请参阅构建文档。
  - 添加用于远程控制和获取KasmVNC信息的Web API
  - 多用户支持,权限可通过API更改
  - Web UI使用webpack以缩短加载时间
  - 网络和CPU瓶颈统计
  - 相对光标支持(游戏指针模式)
  - 光标锁定
  - 支持扩展字符语言的IME
  - 更好的移动设备支持
  - 使用开源驱动程序(AMDGPU、Intel、ATI、ARM)的DRI3 GPU加速

未来目标:

  - H264编码

### 从源代码编译
请参阅builder/README.md。我们将构建系统容器化以确保高度可重复的构建。

### 许可和致谢
请参阅LICENSE.TXT和ACKNOWLEDGEMENTS.md
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

稿定AI

稿定设计 是一个多功能的在线设计和创意平台,提供广泛的设计工具和资源,以满足不同用户的需求。从专业的图形设计师到普通用户,无论是进行图片处理、智能抠图、H5页面制作还是视频剪辑,稿定设计都能提供简单、高效的解决方案。该平台以其用户友好的界面和强大的功能集合,帮助用户轻松实现创意设计。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号