VNC Viewer Ubuntu

2025年03月17日 | 阅读 9 分钟

VNC 简介

VNC虚拟网络计算 (Virtual Network Computing) 是一种图形桌面共享系统,它应用 远程帧缓冲协议 (Remote Frame Buffer Protocol)(或 RFB)来远程控制其他计算机。它可以将鼠标和键盘输入从一台计算机传输到另一台计算机,在网络上提供图形屏幕的更新。

虚拟网络计算是 平台无关的——有适用于 Java 和多种基于 GUI 的操作系统的服务器和客户端。多个客户端可以同时连接到一个 VNC 服务器。这项技术的常见用途包括远程技术支持,以及从家中计算机访问工作计算机上的文件,反之亦然。

  • 最初,VNC 是在 英国剑桥Olivetti 和 Oracle 研究实验室 开发的。
  • VNC 的原始源代码和几个最新的衍生版本都是在 GNU 通用公共许可证 下的开源软件。
  • 有多种 VNC 变体,它们提供各自的特定功能。例如,有些用于 Microsoft Windows 或提供文件传输等。有些与 VNC 兼容(不包括其自带功能),这意味着某个变体的查看器可以连接到另一个服务器。其他变体基于 VNC 代码,但不兼容标准 VNC。
  • RFB 和 VNC 是 RealVNC 有限公司美国 和其他一些国家的注册商标。

VNC 的历史

英国剑桥Olivetti 和 Oracle 研究实验室Olivetti 和 Oracle 公司 收购该实验室时集成了 VNC。 AT&T 拥有该实验室,并于 2002 年关闭了该实验室的研究工作。

在 AT&T 研究实验室从事 VNC 工作的开发人员包括:

  • 安迪·霍珀 (Andy Hopper)
  • 詹姆斯·韦瑟罗尔 (James Weatherall)
  • 昆汀·斯塔福德-弗雷泽 (Quentin Stafford-Fraser)
  • 安迪·哈特 (Andy Harter)(项目负责人)
  • 特里斯坦·理查森 (Tristan Richardson)(项目发明人)

一些开发团队成员(包括 Hopper、Weatherall、Harter 和 Richardson)在 2002 年 Olivetti 和 Oracle 研究实验室关闭后,成立了 RealVNC,以继续在该名称下开发商业和开源 VNC 软件。

GPLed 的原始源代码已发展出许多其他 VNC 版本。这种分支并未导致兼容性问题,因为远程帧缓冲协议旨在可扩展。VNC 服务器和客户端通过握手协商功能,以使用两端支持的最正确的选项。

RealVNC Ltd. 声明 “VLC” 一词自 2013 年起在美国和许多其他国家注册为商标。

VNC 的操作

  • VLC 客户端是一个程序,它显示从服务器生成的屏幕数据,从服务器获取更新,并通过通知服务器本地输入来控制它。
  • VNC 服务器是机器上的一个程序,它分发一些屏幕(可能不对应物理显示器——服务器可以是无头服务器),并允许客户端共享对其的控制。
  • VNC 协议非常基本,基于服务器向客户端发送图形基元和客户端向服务器发送事件消息。

在基本操作方法中,查看器连接到服务器上的一个端口。浏览器也可以连接到服务器,服务器可以连接到 5500 端口上处于 “监听模式” 的查看器。监听模式的一个好处是服务器端不需要配置防火墙以允许访问 5900 端口。责任在于查看器,当服务器端没有计算机专业知识而查看器用户知识渊博时,这很有帮助。

服务器将小的帧缓冲矩形传输到客户端。VNC 协议可能会占用大量带宽,因此已经设计了多种方法来减少通信开销。 例如,有多种编码(用于确定发送这些矩形的最动态方式的方法)。VNC 协议允许服务器和客户端通信它们将应用的编码。

默认情况下,VNC 使用 5900+N TCP 端口,其中 N 是显示器编号。此外,各种实现会在 5800+N 端口上启动一个常见的 HTTP 服务器,以将 VNC 查看器作为 Java Applet 提供,允许从支持 Java 的网页浏览器轻松连接。只要服务器和客户端相应配置,可以使用不同的端口分配。

还存在适用于最新浏览器的 HTML5 VNC 客户端实现(无需插件)。

VNC 的安全性

  • RFB 默认情况下不是一个安全的协议。当编码密码和加密密钥通过网络被嗅探时,破解可能会成功,而密码不是以明文形式发送的。因此,建议至少使用八个字符的密码。
    此外,一些 VNC 版本有八个字符的限制;如果传输的密码超过八个字符,多余的字符将被删除,截断的字符串将与该密码进行比较。
  • UltraVNC 的支持使用一个开源脚本加密插件,该插件可以加密整个 VNC 会话,包括数据传输和密码认证。此外,它允许基于 Active Directory 和 NTLM 用户账户进行认证。
    尽管如此,使用这些加密插件使其不适用于其他 VNC 程序。RealVNC 提供 AES 高强度加密作为其经济型软件包的一部分,并集成 Active Directory。Workspot 发布了 VNC 的 AES 加密补丁。根据 TightVNC,TightVNC 不像图片数据那样安全,因为它是在没有加密的情况下发送的。应该通过 SSH 连接进行隧道传输以规避此问题。
  • VNC 可以通过 VPN 或 SSH 连接进行隧道传输,这将增加一个额外的安全层和更强的加密。SSH 客户端几乎适用于所有平台;可以从 UNIX 客户端、Macintosh 客户端(包括 System 7、Mac OS X 及更高版本)、Microsoft Windows 客户端 以及许多其他客户端创建 SSH 隧道。此外,还有免费软件可以在计算机之间建立即时 VPN 隧道。
  • VNC 使用的额外安全问题是检查所使用的版本是否需要远程计算机所有者的授权才能控制其系统。这将避免远程计算机所有者在不知情的情况下发现有人正在控制其系统的情况。

VNC 系统的用途

这些类型的系统有多种不同的用途,可以使个人和企业都相对更容易。 例如,VNC 系统可以协助远程技术支持。这意味着如果一台计算机出现问题,用户可以连接到该计算机的网络以排查任何问题。这对于企业来说是一个重要的用途。此外,它也被希望帮助亲戚和朋友解决计算机问题的用户使用。

  • 用户可以在各种情况下使用 VNC 远程访问多台计算机上的文件。
  • 需要从办公室系统访问工作文件的用户可以使用 VNC。
  • 此外,对于忘记携带演示文稿上班的用户来说,它也非常有用。
  • 这类用户可以使用 VNC 连接到他们的家用电脑以取回文件。
  • 这种程序通常被服务台、IT 支持和系统管理员使用。
  • 它被许多管理员用来控制员工的计算机。
  • 管理员可能需要这样做来帮助一些员工解决任何类型的程序问题。
  • 它也可以在课堂上被老师使用。
  • 老师可以利用这个程序让学生检查老师电脑上发生的事情。
  • 它可以帮助老师更有效、更轻松地教导学生。

使用 VNC 的好处

VNC Viewer Ubuntu

省钱: VNC 允许我们使用旧电脑执行最新程序。有时,它允许企业购买更少的电脑。有些企业不再需要类似的处理能力或磁盘内存,因为 VNC 使事情变得更容易。

我们有可能存储丢失的、位于大型客户端计算机上的数据。这是因为虚拟桌面保存的每个数据都存储在辅助数据中心。它允许我们不间断地访问所有数据,不影响正常工作流程。

成熟产品: 它是一个成熟产品,自 20 世纪 90 年代以来一直在集成。它实现了一个非常简单但健壮的协议,称为 远程帧缓冲协议

平台无关: VNC 是平台无关的,因为传输键盘按键和桌面图像的机制在操作系统中可用。需要存在特定的操作系统服务器和客户端应用程序,但如今几乎所有可想象的操作系统,包括智能手机,都有 VNC 服务器和客户端应用程序。

VNC 类型

下面列出并解释了一些重要的 VNC

VNC Viewer Ubuntu

什么是 RealVNC?

RealVNC 是一家由虚拟网络计算系统的原始创建者集成的企业。这家企业提供多种不同的程序版本。此外,还有一个免费版本可用。

什么是 Ultra VNC?

该公司提供高度先进的免费程序,主要用于主流企业。Ultra VNC 具有以下几个功能:

  • 远程控制一个程序的能力。
  • Windows 支持
  • 通过远程位置访问电子邮件
  • 处理视频的能力
  • 聊天功能
  • 压缩增强
  • 文件传输功能

什么是 Tight VNC?

它是一款易于使用且免费的程序,包含 GPC 许可的多种功能和完整的源代码。Tight VNC 的一些重要功能如下:

  • 密码支持
  • JPEG 压缩和动态编码能力
  • 增强的网页浏览器访问
  • 缩放远程桌面
  • 仅适用于 Windows 操作系统的文件传输功能
  • Tight VNC 可用于 UNIX 和 Windows。此外,它还与其他 VNC 软件兼容。

.NET VNC Viewer

它是一个完全免费的程序,主要用于智能手机和 PDA。该程序可以在不同类型的模式下执行。此外,它还可以运行全屏模式、窗口模式,甚至监听模式。.NET VNC 查看器包含以下几个功能:

  • 会话历史
  • 智能手机支持
  • 掌上电脑支持
  • 服务器和客户端侧缩放

VNC 的缺点

VNC Viewer Ubuntu
  • 占用大量带宽: VNC 在将桌面图像传输到客户端时,由于其常见的工作方式,会占用大量带宽。这可能会在低带宽环境下造成问题。
    但是,大多数 VNC 客户端允许用户指定远程屏幕分辨率(屏幕大小)以及要使用的颜色深度。灰度屏幕或低分辨率可以相当快速地传输,并在较低带宽连接上良好运行。
  • 原始编码技术: 最基本的 VNC 编码形式采用原始编码技术。如果服务器和客户端非常不兼容,以至于它们不共享先进的编码方法,原始屏幕将通过服务器以从左到右、逐像素的顺序传输到客户端。
    大多数最新的实现都试图通过只发送变化的像素来减少这个问题。这对于鼠标光标变化等小范围移动非常有效。但是,当整个屏幕发生变化时,例如在阅读网页或文档时,它就会变得很慢。
  • 应用程序的重新安装: VNC 的另一个潜在缺点是它只提供远程桌面的使用,只能使用该桌面上存在的应用程序。如果希望在远程计算机上使用本地计算机上的任何应用程序,唯一的方法是在远程计算机上安装相同的应用程序。这可能会根据您使用 VNC 的情况而成为一个问题。
  • VNC 程序的几大挑战: 通常,它们涉及一系列潜在的性能问题和安全问题。这些优点是否大于这些挑战,取决于您使用此类程序的原因。此外,它还取决于您计算机网络上已有的软件和安全类型。
  • 性能: 该程序的速度仅取决于最慢的可用互联网连接。如果您的互联网连接运行缓慢,您可能会在大型客户端上执行程序时遇到问题。此外,当您使用交互式应用程序和实时程序时,性能问题往往会增加。
  • 复杂性: 这可能会导致一些用户放弃使用 VNC 系统。如果您使用多个服务提供商、协议、网络或一组网络硬件设备来创建 VNC 隧道,您可能会遇到一个典型的问题,即尝试使程序协同工作。您可能需要聘请专业人员来使事情正常运行。当程序不是为了协同工作而设计时,尤其如此。

在 Ubuntu 中安装 VNC Viewer

步骤 1: 首先,我们需要执行更新命令来更新软件包存储库并获取最新的软件包信息


VNC Viewer Ubuntu

步骤 2: 然后,我们需要执行安装命令以快速安装软件包及其依赖项


VNC Viewer Ubuntu
下一个主题Arch Linux vs. Ubuntu