VNC
概述
openSUSE 中的 VNC 主要基于 TigerVNC 项目。
TigerVNC 的服务器组件位于 xorg-x11-Xvnc 软件包中
- libvnc.so:X 服务器的 VNC 扩展。
- Xvnc:内置 VNC 扩展的无头 X 服务器。
- vncserver:简化启动 Xvnc 及其内部图形会话的脚本。
- x0vncserver:共享其运行的 X 服务器屏幕的 X 客户端应用程序。
还有x11vnc包含以下内容的软件包x11vnc应用程序。此应用程序的工作原理与x0vncserver.
参数
所有 TigerVNC 组件都接受手册页中记录的参数Xvnc手册页。
重要参数
- SecurityTypes:要使用的加密模式和身份验证方法的列表。常用值是
- TLSVnc(默认):加密,需要由密码或PasswordFile参数指定的密码。
- VncAuth:未加密,需要由密码或PasswordFile参数指定的密码。
- TLSNone:加密,不需要密码。
- 无:未加密,不需要密码。
- PasswordFile:存储密码(以及可选的只读密码)的文件的路径。您可以使用“vncpasswd”命令生成该文件。
配置
根据您的用例,可以进行各种配置。除非另有说明,以下所有配置均使用xorg-x11-Xvnc软件包。
共享真实屏幕
以下配置通过 VNC 共享真实屏幕的内容。
如果您在多个虚拟终端上运行多个 X 服务器,则只有当前活动的 X 服务器会通过 VNC 保持活动。其他 X 服务器将显示为黑色/冻结。这是 X 服务器的限制。
临时
用例:当您想要临时共享桌面时。
要在 您的 X 会话内 启动屏幕共享,请运行以下命令
它将打印出可用于连接的 VNC 显示号。
此命令默认使用加密和密码保护。您必须首先设置密码。
或者您可以使用 x11vnc 软件包中的 x11vnc
用例:当您希望每个真实的 X 会话都可以通过 VNC 访问时。
- 取消注释/etc/X11/xorg.conf.d/10-libvnc.conf.
- 中的“Module”和“Screen”部分。SecurityTypes和PasswordFile设置适当的值选项,检查以获取文档和附加选项。
- 重启 X 服务器。注销并重新登录就足够了。
您可以使用与 X 显示号匹配的 VNC 显示号连接到它(第一个会话为 :0,第二个会话为 :1,依此类推)。
附加的无头会话
以下配置共享它们自己的会话,这些会话独立于真实屏幕的内容。可以同时运行无限数量的会话。
手动启动的永久会话
用例:当您需要一个个人永久会话,该会话将持续到您手动终止它为止。
New 'hostname:2 (username)' desktop is hostname:2 Starting applications specified in /home/<username>/.vnc/xstartup Log file is /home/<username>/.vnc/hostname:2.log
这将启动 VNC 服务器并根据您的 ~/.vnc/xstartup 文件启动会话。如果它不存在,它将创建一个默认文件,该文件将
- 尝试使用您的 ~/.xinitrc。
- 尝试使用 /etc/X11/xinit/xinitrc。
- 如果您正在图形会话中(设置了 WINDOWMANAGER 变量),它将尝试启动相同类型的会话。
- 它将选择一个已安装的窗口管理器(基于任意优先级列表)。
- 退回到 twm 和 xterm。
Xvnc 默认会使用加密和密码保护。您必须首先设置密码。请参阅 [Security]。
永久会话将分配下一个可用的 VNC 显示号(在上面的示例中为 :2)。您可以使用它来连接到会话。
您可以通过在会话内注销或运行以下命令来终止会话
请查看此处以了解如何使用它。
自动启动的一次性会话
用例:当您希望允许用户连接、通过登录启动其会话并在断开连接时自动终止会话时。会话自动生成,单个用户无需提前准备任何内容。
在 YaST 中,导航到“远程管理 (VNC)”并选择“允许远程管理”。自 Leap 42.2 起,此选项被称为“允许无会话管理的远程管理”。
VNC 服务器侦听显示号 :1。每个连接都会分配一个新会话。客户端断开连接时,会话将终止。无法两次连接到正在运行的会话。
默认使用加密。不需要 VNC 密码,因为用户通过 VNC 中的显示管理器登录。
自动启动的可选永久会话
此配置自 Leap 42.2 起可用。
用例:当您希望允许用户连接,通过登录启动其会话并可选地将其标记为永久时。会话自动生成,单个用户无需提前准备任何内容。
在 YaST 中,导航到“远程管理 (VNC)”并选择“允许会话管理的远程管理”。
VNC 服务器监听显示号 :1。如果有正在运行的永久会话,您将看到重新连接或启动新会话的选项。默认情况下,新会话将在您断开连接时终止。您可以使用 vncmanager-controller 工具将您的会话配置为永久。
默认使用加密。不需要 VNC 密码,因为用户通过 VNC 中的显示管理器登录。
使用 VNC 安装
在安装屏幕上,编辑内核行并添加“vnc=1”,然后按 F10 或 CTRL-x 引导。系统不会显示正常的图形安装程序,而是会要求您设置一个临时 VNC 密码,如果您有多个网络设备(例如,以太网 + Wi-Fi),系统会询问您要使用哪个设备。之后,您将看到您的 IP 和端口,您可以通过它们访问 VNC 安装程序。如果您想通过 Web 浏览器使用 VNC 进行安装,还会提供一个基于 Web 的端口。
更多信息可在文档中找到。
故障排除
登录屏幕显示黑屏。
确保您的显示管理器正在运行并已启用 XDMCP。
如果您使用 YaST 启用了 VNC,它将自动启用 XDMCP,但您必须重新启动显示管理器才能使其生效。例如,通过注销并重新登录。
SDDM (Simple Desktop Display Manager) 是 KDE5 中的默认显示管理器,它不支持 XDMCP。您必须切换到其他显示管理器才能在 VNC 会话中获得登录屏幕。
未为 VNC 认证配置密码
tigervnc 服务器的默认安全类型是TLSAuth. TLSAuth使用加密并需要使用密码进行身份验证。
您必须使用vncpasswd命令创建密码文件并将其提供给 VNC 服务器,使用PasswordFile参数指定的密码。