几天前,我们将 Debian 从旧稳定版更新为稳定版 (Linux 6.0.0-0.deb11.6-amd64)。更新时,必须重新启动计算机,这会结束一些重要的进程,例如 vncserver,我们用于从本地和远程网络连接(使用 vncviewer 的本地连接,从 PuTTY 远程连接 - Win 机器或其他实用程序 - MacOS,特别是我不知道)。
重新启动后,我尝试手动启动所有虚拟桌面vncserver :<desktop_number>
,服务器按预期启动。该命令提供以下输出:
3NI3X0 New Xtigervnc server '<machine>:<desktop> (<user>)' on port <port_number> for display :<desktop>.
3NI3X0 Use xtigervncviewer -SecurityTypes VncAuth -passwd /home/<user>/.vnc/passwd :<desktop> to connect to the VNC server.
但是我们无法再使用 fe vncviewer 连接到虚拟 VNC 桌面(我们没有安装 xtigervnc 软件,我们使用 vncviewer 并且它一直有效)。我正在使用vncviewer <machine>:<dekstop>
命令来连接。确认命令错误后,弹出窗口显示:'The connection was refused by computer'
。我还设法找到了vncviewer.log
更多信息,请参见下文:
VNC(R) Viewer 6.21.406 (r44671) x86 (Apr 7 2021 10:26:47)
Copyright (C) 2002-2020 RealVNC Ltd.
RealVNC and VNC are trademarks of RealVNC Ltd and are protected by trademark
registrations and/or pending trademark applications in the European Union,
United States of America and other jurisdictions.
Protected by UK patent 2481870; US patent 8760366; EU patent 2652951.
See https://www.realvnc.com for information on VNC.
For third party acknowledgements see:
https://www.realvnc.com/docs/6/foss.html
OS: Debian GNU/Linux 11, Linux 6.0.0, amd64
<14> 2023-02-09T10:11:22.902Z <machine> vncviewer[<some_number>]: CModuleHosted: Getting CloudConfig.pkg from built-in resource
<11> 2023-02-09T10:11:22.904Z emperor vncviewer[<some_number>]: VendorConfig: Error in Certificate "CN=GeoTrust Global CA,O=GeoTrust Inc.,C=US": X.509 Error: Certificate expired
<11> 2023-02-09T10:11:22.904Z <machine> vncviewer[<some_number>]: VendorConfig: Error in Certificate "CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R2": X.509 Error: Certificate expired
<14> 2023-02-09T10:11:22.910Z <machine> vncviewer[<some_number>]: CModuleHosted: Using business identifier <>
<14> 2023-02-09T10:11:22.940Z <machine> vncviewer[<somenumber>]: CModuleCtrlComms: Listening on /tmp/.vnc-<number>/vncviewer.CtrlComms.<somenumber>
<14> 2023-02-09T10:11:22.943Z <machine> vncviewer[<some_number>]: GoogleAnalytics: X.509 Error: Certificate expired
<13> 2023-02-09T10:11:22.953Z <machine> vncviewer[<somenumber>]: CSession: Connecting to <hostmachine>:<desktop> (Chooser for Direct UDP/Direct TCP via proxy settings)
<11> 2023-02-09T10:11:22.956Z <machine> vncviewer[<some_number>]: CSession: connection error: connect: Connection refused (111)
<13> 2023-02-09T10:11:22.956Z <machine> vncviewer[<some_number>]: CConnection: close: [System-111] The connection was refused by the computer
令人惊讶的是,当从远程网络(即非本地)连接时,虚拟桌面工作得很好。与 SSH 连接相同 - 它可以使用ssh <host_machine>
命令连接到 <host_machine>,但我们还需要 GUI 来执行某些任务。
我没有找到任何有关如何解决此问题的相关信息,并且在我们的团队中,我们确实需要它来实现工作目的。您认为我们需要某种新的身份验证密钥才能从本地网络连接吗?
如果您能给我一些相关信息,我将非常高兴,这可能会解决这个问题。祝你今天过得愉快。
答案1
我们终于成功解决了这个问题。问题是,vncserver 设置为仅接受本地连接(即它只能从运行它的单台 PC 连接到虚拟桌面)。我们在使用时注意到了顶部,我们在其中寻找 vncserver 进程及其配置
我们使用以下命令启动 vncserver:
vncserver :<desktop> -geometry <resolutionxresolution> -localhost no
vncserver 是 TigerVNCServer 的别名(Xvnc TigerVNC 1.11.0 - 构建于 2022 年 1 月 26 日)