事实:我有一个用于共享桌面的配置,直到最近更新 Gnome 桌面以使用 sgnome-shell 3.10 后,该配置才可用。我曾经使用 TightVNC 从 Windows 计算机连接到我的计算机,直到昨天(2014-19-1),它都运行正常。
现在 Windows 端的连接失败(完整登录 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.
“共享”部分已按要求配置,如您所见:
诊断:看来更新将安全类型更改为tightVNC不知道的新类型(过去发生过这种情况)。
问题:直到 TightVNC(以及世界其他地方)赶上,是否可以配置内部 VNC 服务器以使用以前的安全类型?
答案1
真正的解决方案:我现在正在使用安全软件控制中心在 Windows 机器上x11vnc在 Linux 服务器上。在 Android 上也适用于 bVNC。您需要一些专业知识才能使其工作,因此这里有简短的说明:
在 Linux 上(按照 x11vnc 给您的说明进行操作,虽然冗长但值得一读):
x11vnc -storepasswd
x11vnc -forever -repeat -usepw -ssl -autoport 6000
(您必须将最后一个放在您的登录启动脚本之一中,或者其他任何地方。不要在生成的 SSL 证书上使用密码。我使用端口 6000 以避免干扰 vino)。
在 Windows 上:安装二进制客户端从这里。
连接并享受(较慢……)加密连接。
部分答案:(为了帮助其他人而发的,不建议);我希望这个问题还有其他答案——我会将这个答案标记为正确答案,因为现在还没有解决方案)。
当 Vino 项目决定切换到默认要求加密--- 不幸的是,服务器支持的唯一加密类型vino
(类型 18)是不是大部分 Windows、Android 和 iOS 查看器均支持此功能。据我所知,只有基于 Linux 的vinagre
查看器支持此功能。
我已向 Vino 项目报告了一个错误,上游以及发射台 关于此问题;请查阅那里了解更多详情。基本上,似乎没有足够的开发人员能力为服务器实现更多加密类型(公平地说)。
这意味着你可以返回上一个,不安全通过dconf-editor
如下方式禁用整个 VNC 层的加密行为:
大胖子通知这意味着你输入的都是清晰可见在网络中。包括密码。
我可以这样做,因为连接确实是通过加密的 SSH 隧道进行的,并且远程机器上没有其他本地用户 --- 但即使在这种情况下,如果有人设法访问您的机器,他们也可以通过嗅探 127.0.0.1 来读取您的所有秘密...
答案2
适用于 16.04 的一行 UNSAFE 加密关闭命令
dconf write /org/gnome/desktop/remote-access/require-encryption false
然后 TigerVNC 和 realvnc 在 Windows 上工作。
作为罗马诺然而指出,只有当您的连接已经在另一层加密时才这样做。
发现dconf dump
。
TigerVNC 端也有一个兼容性请求:https://github.com/TigerVNC/tigervnc/issues/307
答案3
使用 SSH 保护未加密的 VNC 会话...
禁用客户端不支持的默认加密要求
dconf write /org/gnome/desktop/remote-access/require-encryption false
禁用默认接口上的监听,使用lo
(环回)
dconf write /org/gnome/desktop/remote-access/network-interface lo
Windows 具有生成 SSH 密钥、将 ssh id 复制到 vnc-tunnel 帐户以及设置端口转发所需的命令。
SSH 端口转发命令示例
ssh.exe -vvv -L 5900:127.0.0.1:5900 -N -i %USERPROFILE%/.ssh/id_vnc [email protected]
答案4
快速找到要编辑的位置 - 启动 dconf-editor,键入 ctl f - 键入 5900 - 按回车键,将显示禁用加密的正确区域。如果多个部分都有 5900,请按下一步查找下一个出现的位置。