我在用着Manjaro / Arch Linux分配。我正在尝试安全连接到我的 VNC 服务器,但无法配置它。
我在用着x11vnc,因为对于流式传输当前用户会话来说,它比 TigerVNC 更优化。
使用此命令我可以启动我的 VNC 服务器:
x11vnc -nap -wait 50 -noxdamage -rfbauth /home/mikel/.vnc/passwd -display :0 -nocursor -forever
但是当我使用(真实)VNC 查看器时,它说连接不安全。
我想从 LAN 外部连接到 VNC 服务器,因此连接必须加密。
我尝试使用该-ssl
标志。该标志生成并使用 ssl 证书。 VNC查看器不兼容使用这种 VNC 连接,所以我必须下载这个(ssvnc)。
尝试使用此程序进行连接后,我在服务器控制台上收到此错误:
20/11/2019 21:44:55 SSL: ssl_helper[1688]: SSL_accept() *FATAL: -1 SSL FAILED
20/11/2019 21:44:55 SSL: error:1420918C:SSL routines:tls_early_post_process_client_hello:version too low
我的 Windows VNC 查看器上出现此错误:
我不知道是否x11vnc不工作或者如果 VNC 查看器(ssvnc)有一个过时的库。
有什么建议吗?
答案1
您可以使用ssh
端口转发来设置隧道。您可以使用如下命令登录远程主机 (example.com):
ssh -L 5903:localhost:5900 [email protected]
然后,您连接vncserver
到本地主机:3
-L 开关将本地端口 5903 转发到远程主机,然后远程主机将其(从其一侧)转发到 localhost:0。
`vncserver 认为它正在与 localhost:3 通信,并且未加密,但是从 localhost:3 到 Remotehost:0(互联网上的隧道)的 ssh 流量已加密,因此您已准备就绪。
由于ssh
也会压缩您的流量,因此您也可能会从中获得(小)提升。