当前位置: 首页>>技术教程>>正文


Gnome 3.10共享桌面—如何配置VNC的安全类型?

,

问题描述

事实:我有一个用于共享桌面的配置,该配置一直有效,直到 Gnome 桌面最近更新为使用 sgnome-shell 3.10。我曾经使用 TightVNC 从一台 Windows 机器连接到我的机器,直到昨天(2014-19-1)它都可以正常工作。

现在来自 Windows 端的连接失败 ( full log in pastebin ) 并出现此错误:

哪个挖日志是:

[ 5872/ 6448] 2014-01-20 12:11:18:247   List of security type is read
[ 5872/ 6448] 2014-01-20 12:11:18:247 : Security Types received (1): Unknown type (18)
[ 5872/ 6448] 2014-01-20 12:11:18:247   Selecting auth-handler
[ 5872/ 6448] 2014-01-20 12:11:18:247 + RemoteViewerCore. Exception: No security types supported. Server sent security types, but we do not support any of their.

“sharing” 部分已按应有的方式配置,如您在此处所见:

诊断:似乎更新将安全类型更改为 tightVNC 未知的新类型(过去发生过)。

问题:在 TightVNC(以及世界其他地方)catches up 之前,是否可以将内部 VNC 服务器配置为使用以前的安全类型?

最佳思路

真正的解决方案:我现在在 Windows 机器上使用 SSVNC,在 Linux 服务器上使用 x11vnc。也适用于 android 上的 bVNC。您需要一些专业知识才能使其发挥作用,因此请在此处进行简要说明:

在 Linux 上(按照 x11vnc 给你的指令,很冗长但值得一读):

x11vnc -storepasswd
x11vnc -forever -repeat -usepw -ssl -autoport 6000 

(您必须将最后一个放在您的登录启动脚本之一中,或其他任何内容。不要在生成的 SSL 证书上使用密码。我使用端口 6000 以免与 vino 混淆)。

在 Windows 上:安装二进制客户端 from here

连接并享受(缓慢…)加密连接。

部分答案:(为了帮助他人而发布,不推荐);我希望这个问题会有其他答案——我会将这个答案标记为正确答案,因为目前还没有解决方案)。

当 Vino 项目决定切换到 require encryption by default 时,问题浮出水面——不幸的是,大多数 Windows、Android 和 iOS 查看器不支持 vino 服务器(类型 18)支持的唯一加密类型。据我所知,只有基于 Linux 的 vinagre 查看器支持它。

我已经向 Vino 项目 both upstreamlaunchpad 报告了一个关于这个问题的错误;在那里寻找更多细节。基本上,似乎没有足够的开发人员权力来为服务器实现更多的加密类型(足够公平)。

这意味着您可以通过使用 dconf-editor 禁用整个 VNC 层的加密来回到以前的不安全行为,如下所示:

大胖注意,这意味着您键入的所有内容在网络中都是清晰可见的。包括密码。

我可以做到,因为连接实际上是通过加密的 SSH 隧道进行的,并且远程计算机上没有其他本地用户——但即使在这种情况下,如果有人设法访问您的计算机,他们也可以读取您的所有秘密通过嗅探 127.0.0.1…

次佳思路

16.04 的一行 UNSAFE 加密关闭命令

dconf write /org/gnome/desktop/remote-access/require-encryption false

然后 TigerVNC 和 realvnc 从 Windows 工作。

然而,正如 Rmano 指出的那样,只有当您的连接已经在另一层上加密时才这样做。

发现 dconf dump

TigerVNC 端也有兼容性请求:https://github.com/TigerVNC/tigervnc/issues/307

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/13707.html,未经允许,请勿转载。