葡萄酒

葡萄酒

我想远程访问我的 Xubuntu 桌面计算机,并查看与远程机器显示器上显示的桌面相同默认情况下,同时使用 VNC 和 xrdp 都会获得一个新的桌面会话,而我不想要这个。

可能性如下:

我似乎能得到的唯一半途而废的解决方案是使用

UNIXPW_DISABLE_SSL=1 x11vnc -unixpw -localhost

并创建我自己的systemd 服务文件然后通过 SSH 隧道连接到该地址。

葡萄酒

我使用丹麦语键盘,但vino似乎不支持该键盘,原因是漏洞。无法使用æøå或任何特殊字符(例如)<>|;.对我来说,vino 无法使用。此外,vino 在 XFCE 上的支持很差,因为vino-preferences 已被删除

x11vnc

x11vnc大部分情况下都有效,但是,似乎没有任何方法可以安全地存储密码。使用 VNC 密码文件是可能的,但仅限于8 个字符和和很容易解密,所以充其量只是一种模糊的安全性。x11vnc使用-nopw-local因此它不能通过网络使用,需要通过 SSH 隧道使用)可以工作,但桌面计算机上的任何进程(以任何用户身份运行)都可以访问我登录的桌面,这并不好。

x11vnc有安全连接选项:-ssl-stunnel。对于-ssl,Remmina 显示:“TLS 握手失败:已收到 TLS 致命警报。”并 xtightvncviewer显示:“服务器未提供支持的安全类型”,而如果服务器使用-stunnel这两个查看器,则只是坐在那里,没有抱怨,但也没有启动 VNC 窗口。

x11vnc有一个-unixpw“将使用 su(1) 程序来验证用户密码”的命令。但这需要 或-ssl和,但当我使用 Remmina 或 时, 或 都不起作用-stunnel。但根据手册页,设置环境变量“禁止需要或”。-localhost-ssl-stunnelxtightvncviewerUNIXPW_DISABLE_SSL=1-ssl-stunnel

然后UNIXPW_DISABLE_SSL=1 x11vnc -unixpw -localhost通过 SSH 隧道运行它似乎几乎是涅槃。但是-unixpw我无法将凭据存储在 Remmina 中(将密码存储在 中gnome-keyring)。但每次都必须输入它们。坦率地说,在我看来,这看起来很糟糕/用户体验很差。

偏磷酸钠

xrdp 似乎要么启动一个独立的桌面会话,要么可以连接到正在运行的桌面 - 鼓声 -vino或者x11vnc所以我得到了上面概述的所有问题,以及 xrdp 引入的任何问题。

真的没有更好的吗安全的访问我的桌面的方法?真的吗?

我最终做了什么

编辑:最后,我选择了极度不安全-rfbauth /home/user/.vnc/passwd(和另一个密码!)而不是-unixpw。结合-localhost使用 SSH 隧道,因为的用户体验-unixpw实在太差了。l。并且需要添加更多选项,因此最终的 systemd 配置为:

[Unit]
Description=x11vnc VNC Server for X11
Requires=lightdm.service
After=lightdm.service

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth /var/run/lightdm/root/:0 -display WAIT:0 -forever -shared -rfbauth /home/user/.vnc/passwd -rfbport 5900 -localhost
ExecStop=/usr/bin/killall x11vnc
Restart=on-failure
RestartSec=2
SuccessExitStatus=3

[Install]
WantedBy=graphical.target

答案1

在远程设置 ssh 和 x11vnc。确保您有权限或设置权限。然后命令控制它们全部:

ssh <remote address> -L 5900:localhost:5900 "x11vnc -no6 -localhost -auth /var/run/lightdm/root/:0 -display :0"

然后 vnc 到本地主机...

相关内容