摘要
利用虚拟网络计算(Virtual Network Computing,VNC)可以通过图形桌面控制远程计算机(与远程外壳访问相对)。VNC 是独立于平台的并允许您从任何操作系统访问远程计算机。
SUSE Linux Enterprise Desktop 支持两种不同种类的 VNC 会话:自客户端启动起在 VNC 连接期间“在线”的一次性会话和始终“在线”直到被明确终止的永久会话。
![]() | 会话类型 |
|---|---|
一台计算机可在不同端口上同时提供两种会话,但当会话打开后不能从一种类型转换为另一种类型。 | |
一次性会话由远程客户端启动。它在服务器上启动图形登录屏幕。这样您可以选择启动会话的用户,并且如果登录管理器支持,还可以选择桌面环境。一旦终止与此类 VNC 会话的客户端连接,则此会话中启动的所有应用程序也将终止。一次性 VNC 会话不能共享,但可以在一台主机上同时存在多个会话。
过程 4.1. 启用一次性 VNC 会话¶
启动 ++。
选中。
如果需要,还可以选中(例如,当网络接口配置为在外部区域中时)。如果有多个网络接口,请通过将打开防火墙端口限制为特定的接口。
单击确认您的设置。
如果不是所有需要的包都可使用,则需要批准安装缺少的包。
![]() | 可用配置 |
|---|---|
SUSE Linux Enterprise Desktop 上的默认配置对会话使用 1024x768 像素(颜色深度 16 位)。会话在端口 其他配置可在不同端口上使用。请询问您的系统管理员。 VNC 显示器编号和 X 显示器编号是独立于一次性会话的。VNC 显示器编号手动指派给服务器支持的每个配置(如上例中的 :1)。只要 VNC 会话启动时带任一配置,就会自动获取可用 X 显示器编号。 | |
要启动一次性 VNC 会话,必须在客户端计算机上安装 VNC 查看器。SUSE Linux 产品上的标准查看器是 tightvnc 包提供的 vncviewer。您也可以使用 Web 浏览器和 Java 小程序查看 VNC 会话。
要启动 VNC 查看器并启动带服务器默认配置的会话,请使用以下命令:
vncviewer jupiter.example.com:1
若不使用 VNC 显示器编号,您也可以指定带两个冒号的端口号:
vncviewer jupiter.example.com::5901
或者通过输入以下 URL 使用支持 Java 的 Web 浏览器查看 VNC 会话:http://jupiter.example.com:5801
如果不需要或想修改默认配置,则可以跳过此部分。
一次性 VNC 会话通过 xinetd 守护程序启动。配置文件位于 /etc/xinetd.d/vnc。默认情况下提供六个配置块:三个用于 VNC 查看器(vnc1 到 vnc3),另外三个用于 Java 小程序(vnchttpd1 到 vnchttpd3)。默认情况下,只有 vnc1 和 vnchttpd1 是活动的。
要激活配置,请在第一列用 # 字符注释掉 disable = yes 行,或者完全删除该行。要停用配置,请取消注释或添加该行。
Xvnc 服务器可以通过 server_args 选项来配置;有关选项列表,请参见 Xnvc --help。
当添加自定义配置时,请确保它们未使用已由其他配置、其他服务或同一主机上的现有永久 VNC 会话使用的端口。
通过输入以下命令激活配置更改:
rcxinetd reload
![]() | 防火墙和 VNC 端口 |
|---|---|
按照过程 4.1, “启用一次性 VNC 会话” 中的描述激活远程管理时,端口 | |
永久 VNC 会话在服务器上启动。该会话和其上启动的所有应用程序运行时不考虑客户端连接,直到会话被终止。
可以从多个客户端同时访问持续 会话。为了便于演示,我们选择一个较为理想的配置,一个客户端具有完全访问权限,所有其他客户端只具有查看访问权限。另一个用例是教员可能需要访问学员桌面的培训系统。但是,大多数时间,您可能不希望共享您的 VNC 会话。
相对于启动显示管理器的一次性会话,永久会话启动准备操作桌面(作为启动 VNC 会话的用户运行)。
永久会话访问受到两种可用密码类型的保护:
授予完全访问权限的普通密码或
可选仅查看密码,授予非交互(仅查看)访问权限。
一个会话可一次具有两种类型的多个客户端连接。
过程 4.2. 启动持续 VNC 会话¶
打开外壳,确保以拥有 VNC 会话的用户身份登录。
如果用于 VNC 会话的网络接口受防火墙保护,则需要手动打开防火墙中您的会话所使用的端口。如果启动多个会话,还可以选择打开一个端口范围。有关如何配置防火墙的细节,请参见第 15 章 Masquerading and Firewalls (↑安全指南)。
vncserver 对显示器 :1 使用端口 5901,对显示器 :2 使用端口 5902,依次类推。对于永久会话,VNC 显示器和 X 显示器通常具有相同编号。
要其他具有 1024x769 像素和颜色深度为 16 的会话,请输入以下命令:
vncserver -geometry 1024x768 -depth 16
vncserver 命令在未给定编号时会挑选未用的显示器编号并打印出选择。有关更多选项,请参见 man 1 vncserver。
当首次运行 vncviewer 时,它请求完全访问会话的密码。如果需要,还可以提供密码用于会话的仅查看访问。
这里提供的密码还用作同一用户将来启动会话的密码。这些密码可以用 vncpasswd 命令更改。
![]() | 安全考虑因素 |
|---|---|
确保使用长度够长的高强度密码(八个或更多字符)。不要共享这些密码。 由于 VNC 连接未加密,可窃听两台计算机间网络的人员可以在会话刚开始时传输密码期间读取密码。 | |
要终止会话,请从 VNC 查看器中关闭运行于 VNC 会话内的桌面环境,像您关闭普通本地 X 会话那样关闭它。
如果希望手动终止会话,请在 VNC 服务器上打开外壳并确保您已作为拥有要终止的 VNC 会话的用户登录。运行以下命令来终止在显示器 :1 上运行的会话:vncserver -kill :1
要连接持续 VNC 会话,必须安装 VNC 查看器。SUSE Linux 产品上的标准查看器是 tightvnc 包提供的 vncviewer。您也可以使用 Web 浏览器和 Java 小程序查看 VNC 会话。
要启动 VNC 查看器并连接 VNC 服务器的显示器 :1,请使用命令
vncviewer jupiter.example.com:1
若不使用 VNC 显示器编号,您也可以指定带两个冒号的端口号:
vncviewer jupiter.example.com::5901
或者通过输入以下 URL 使用支持 Java 的 Web 浏览器查看 VNC 会话:http://jupiter.example.com:5801
通过编辑 $HOME/.vnc/xstartup 可以配置持续 VNC 会话。默认情况下此外壳脚本启动 xterm 和 twm 窗口管理器。要改为启动 GNOME 或 KDE,请将 twm 开头的行替换为以下行之一:
/usr/bin/gnome # GNOME /usr/bin/startkde # KDE
![]() | 每个用户一种配置 |
|---|---|
持续 VNC 会话在单个按用户配置中进行配置。一个用户启动的多个会话都使用相同的启动文件和密码文件。 | |