Guacamole-1.3.0 所需依赖项及相关作用
必须依赖项
依赖库 | 作用 |
---|---|
Cairo | libguac 使用Cairo进行图形渲染 |
libjpeg-turb | libguac 使用 libjpeg-turbo 来提供 JPEG 支持 |
libpng | libpng 被 libguac 用于编写 PNG 图像,这是 Guacamole 协议使用的核心图像类型 |
libtool | libtool 在构建过程中使用,libtool是 创建 Guacamole 所需的编译库 |
OSSP UUID | libguac 使用OSSP UUID 为每个Guacamole 连接分配唯一的ID,这些唯一 ID 是连接共享支持的基础 |
可选依赖项
Guacamole 的可选依赖项决定了guacamole-server 的哪些部分将被构建。这包括对各种远程桌面协议的支持,以及这些协议的任何附加功能:
- VNC 支持取决于libvncclient库,它是libVNCServer 的一部分
- RDP 支持取决于最新版本的FreeRDP
- SSH 支持取决于libssh2、OpenSSL 和Pango(一种字体渲染和文本布局库,由 Guacamole 的内置终端模拟器使用)
- Telnet 依赖于libtelnet和 Pango
- Kubernetes 支持取决于libwebsockets、 OpenSSL和Pango
Guacamole-Server提供的用于将屏幕录制转换为视频的guacenc实用程序 依赖于 FFmpeg,并且只有在至少安装了 FFmpeg 提供的 libavcodec、libavformat、 libavutil和libswscale库时才会构建。
依赖库 | 作用 |
---|---|
FreeRDP | 提供 RDP 支持,让用户(客户端)连接上提供微软终端机服务的电脑(服务端或“远程电脑”) |
Pango | Pango 是一个文本布局库,Guacamole 使用它来为需要终端(Kubernetes、SSH 和 telnet)的协议呈现文本 |
libssh2 | 提供 SSH 支持,使用SSH连接成功后,将建立客户端和服务端之间的对话,该会话是被加密的,之后客户端和服务端的通信都将通过会话传输 |
libtelnet | 提供 Telnet 支持,为用户提供了在本地计算机上完成远程主机工作的能力 |
libVNCServer | 提供 VNC 支持,提供远程控制 |
libwebsockets | 提供 Kubernetes 支持,提供应用部署、维护、扩展机制等功能 |
libpulse | Guacamole 的 VNC 支持使用它来提供实验性音频支持 |
OpenSSL | OpenSSL 提供对 SSL 和 TLS 的支持,这两种常见的加密方案构成了大部分加密网络流量Guacd 将使用 SSL 支持构建,从而允许对 Web 应用程序和 Guacd 之间的通信进行加密。SSH 支持操作公钥/私钥和 Kubernetes 支持以及与 Kubernetes 服务器的 SSL/TLS 连接如果没有 SSL 支持,将无法加密与 guacd 的通信,也无法构建对 SSH 和 Kubernetes 的支持 |
libvorbis | libvorbis 提供对 Ogg Vorbis 的支持,一种免费且开放的声音压缩标准;如果安装,libguac 将支持 Ogg Vorbis,支持音频的协议将尽可能使用 Ogg Vorbis 压缩;否则,声音只会被编码为 WAV(未压缩),并且只有在您的浏览器也支持 WAV 时才可用 |
libwebp | libguac 使用 libwebp 来编写 WebP 图像,尽管 Guacamole 协议不强制要求支持 WebP,但如果浏览器和 libguac 都支持,则将使用 WebP 图像;如果缺乏 WebP 支持,Guacamole 将简单地使用 JPEG |
ffmpeg | 由 FFmpeg 提供的libavcodec、 libavformat、 libavutil和libswscale库被 guacenc用于在翻译 Guacamole 会话记录时对视频流进行编码,如果没有 FFmpeg,guacenc实用程序将无法构建,如果您不想对 Guacamole 会话进行图形记录,或者不想将此类记录转换为视频,则不需要 FFmpeg |