介绍

介绍

介绍

我是 Ubuntu 的新用户,我正在尝试以特定方式设置对我的 Ubuntu 22.04 的远程桌面访问。我尝试了原生 GNOME 远程桌面和 XRDP;但是,我无法达到以下期望的行为。

当我在 Ubuntu 桌面上工作时,我需要在桌面上进行物理现场工作和远程桌面工作之间切换。更重要的是,我需要在不退出用户会话的情况下在现场和远程工作之间切换。因此,我需要远程访问远程 Ubuntu 桌面上正在运行的用户会话最好不要使用“屏幕镜像”方法。(与使用 Windows RDP 访问 Windows 上正在运行的用户会话的方式相同。)

远程访问选项

我研究了 Ubuntu 22.04 中的本机远程桌面(GNOME 远程桌面)和 XRDP。如果我理解正确的话,它们都有缺点,使我无法将它们用于特定的远程访问需求。请参阅下面的远程访问选项概述,如果我有错误,请纠正我。

GNOME 远程桌面(GRD)

GNOME 远程桌面通过 VNC 或 RDP 支持“屏幕共享”,也称为“远程协助”模式。这意味着当您使用 GNOME 远程桌面连接到远程桌面时,您将连接到当前登录用户的现有会话,并且您只能在远程桌面上看到用户的镜像屏幕,并且可以控制他的鼠标和键盘。它与 Anydesk 或 Chrome 远程桌面非常相似。远程桌面可以配置为以下任一项:

  • 仅屏幕镜像。这可以通过在远程桌面上将远程桌面设置为“开启”并将远程控制设置为“关闭”来实现。
  • 全屏共享(屏幕镜像 + 鼠标和键盘控制)。这可以通过在远程桌面上将远程桌面设置为“ON”并将远程控制设置为“ON”来实现。

优点:

  • 您可以连接到远程桌面上登录的用户的现有会话而不中断它(即不中断正在运行的进程),请参阅为什么它很重要
  • 该 GUI 与远程桌面上的完全相同,因为您看到的是远程屏幕的精确副本。

缺点:

  • 远程桌面必须连接到显示器,并且显示器必须打开。否则,将没有屏幕可以镜像回给您。
  • 由于屏幕镜像,远程访问的无缝性大大降低(与 XRDP 等相比)。具体来说,当打开和关闭窗口时,画面会滞后且模糊。
  • 任何对远程桌面具有物理访问权限的人都可以看到你在远程桌面上所做的事情,并且它无法保护您的计算机免受本地物理入侵。

第三个缺点是部分解决通过调整各种设置,但前两个缺点仍然存在。

射线衍射

XRDP 与 GNOME 远程桌面有很大不同,与 Windows RDP 类似。当您使用 XRDP 远程访问远程桌面时,你创建一个新的会话(以新用户身份登录)。新会话充当“虚拟机”仅您可访问,这意味着您在会话中所做的一切都只能在您的客户端桌面上看到。在远程桌面上,只能看到登录屏幕,看起来什么都没有发生。

优点:

  • 远程桌面不必连接到显示器,因为“虚拟机”是专门为您的客户端显示器创建的。
  • 远程访问非常无缝,您甚至不会注意到您正在远程桌面上工作,而不是本地桌面。具体来说,即使打开和关闭窗口,画面也非常快速和清晰。
  • 没有人(即使可以物理访问远程桌面)可以看到您在远程桌面上所做的事情。

缺点:

这些缺点可以通过调整各种设置得到部分解决,如上面的链接所示。然而,即使经过这些调整,一些劣势依然存在

Windows RDP

据我所知,Windows RDP 不能在 Ubuntu 上使用,但我在这里介绍它,因为它具有我正在寻找的确切功能。

Windows RDP 与 XRDP 类似。与 XRDP 一样,当您连接到远程桌面时,您会创建一个“虚拟机”仅您可访问,这意味着您在会话中所做的任何事情都只能在您的客户端桌面上看到。但是,与 XRDP 不同,Windows RDP 允许您创建新会话(以新用户身份登录)以及连接到当前登录用户的现有会话。在远程桌面上,当前登录的用户被锁定在其帐户之外,但并未注销,这意味着正在运行的进程不会中断!

优点:

  • 您可以连接到远程桌面上登录的用户的现有会话,而不会中断它(即不会中断正在运行的进程)。
  • 该 GUI 与远程桌面上的完全相同。
  • 远程桌面不必连接到显示器,因为“虚拟机”是专门为您的客户端显示器创建的。
  • 远程访问非常无缝。
  • 没有人(即使可以物理访问远程桌面)可以看到您在远程桌面上所做的事情。

缺点:

  • 没有任何?

据我了解,Windows RDP 结合了 GRD 和 XRDP 的优点,而没有它们的任何缺点。

我的问题

当我从 Ubuntu 客户端连接到 Ubuntu 远程桌面时,Remmina 在远程端使用 GRD 或 XRDP,这存在上述缺点。但是,当我从 Ubuntu 客户端连接到 Windows 远程桌面时,Remmina 在远程端使用 Windows RDP,一切都令人满意。

有没有办法实现从 Ubuntu 客户端连接到 Ubuntu 远程桌面所需的行为?

如有任何提示或相关教程的链接,我将不胜感激:)

编辑1:

这个reddit问题(尤其是此评论)也很好地描述了我的问题。

编辑2:

我目前正在使用 NoMachine 连接到远程桌面。虽然它是一个“屏幕共享”远程访问(与 GRD 和 Anydesk 相同),但它确实通过为本地用户遮挡屏幕并阻止本地输入解决了“本地物理入侵”的缺点。它还部分解决了“无缝”的缺点。NoMachine 比 GRD 或 Anydesk 更无缝。但是,由于它仍然是屏幕共享远程访问,因此它的无缝性远不如 XRDP 或 Windows RDP。将来,我可能会尝试其他人推荐的 Vino VNC 或 RealVNC,希望虽然仍然是屏幕共享,但会更加无缝。

答案1

一句话“不”

当您在 Ubuntu 中使用 Remmina 通过 RDP 协议连接到 Windows 桌面时,远程 Windows 计算机将充当 RDP 服务器。它的行为方式非常特殊,您将其描述为“令人满意”。

当您在 Ubuntu 中使用 Remmina 通过 RDP 协议连接到另一个 Ubuntu 桌面时,远程 Ubuntu 计算机将充当 xRDP 服务器或新的 Gnome 远程桌面 (GRD) 服务器。xRDP 和 GRD 服务器并非设计用于模仿 Windows 功能。尽管 Windows 和 Ubuntu 都使用相同的 RDP 协议,但您所描述的行为差异是由于操作系统之间的差异造成的。

Ubuntu 中使用的显示系统(XORG 或 Wayland)与 Windows 显示系统有很大不同。由于 Windows 和 Ubuntu 之间存在根本差异,因此您的要求是不可能的。

您有两个选择,要么使用 xRDP,要么使用 GRD,并忍受各自的缺点。您也可以尝试其他闭源桌面共享应用程序,例如 Anydesk,但本地可见性和安全性问题仍然存在。

希望这可以帮助

答案2

在标准存储库中尝试 x2go。您可以设置许多参数,包括桌面共享 xfce 等,这样您就可以远程进入而不会被看到或影响当前用户。也可以以任何用户身份进入。非常好的系统。

答案3

X2go 可以满足您的要求,安装它,然后对于任何连接,转到会话首选项,您可以以登录用户共享桌面或任何用户或隐身模式在桌面上连接您的桌面环境类型 kde、xfce 等,如果您需要更多说明,请给我发电子邮件

答案4

注意:这个答案不能完全满足我的问题,因为它不能满足“最好不要使用‘屏幕镜像’方法”的部分。但是,这是我找到的解决该问题的最佳方法,并且该答案可能对遇到相同问题的人有所帮助。

与远程 Ubuntu 桌面上现有用户会话建立半安全、半无缝远程连接的唯一方法如下。

我使用 NoMachine 远程访问软件。它是“屏幕共享”远程访问(与 Anydesk 相同),而不是虚拟会话(例如 Windows RDP),因此远程工作不像 Windows RDP 那样无缝;但是,对于短时间工作来说,无缝性已经足够了。该软件有一个选项,可以在建立远程连接时为本地用户清空屏幕并阻止本地输入,这解决了屏幕共享远程访问的“本地物理入侵”问题。由于它是屏幕共享远程访问,因此必须将显示器连接到远程桌面并且必须打开。通过在本地显示器上将亮度、对比度和 RGB 值设置为 0,可以部分解决远程会话开始和结束时的功耗和屏幕闪烁问题(这可能会打扰靠近本地机器的人)。因此,显示器(几乎)是黑色的,但仍处于打开状态。

设置步骤:

  1. 在远程桌面上安装NoMachine 服务器。
  2. 将设置设为“当有人连接时使物理屏幕变黑”。
  3. 将本地显示器亮度、对比度和 RGB 值设置为 0。
  4. 使用远程访问连接到桌面。
  5. 工作。
  6. 锁定本地用户会话(以便断开连接后没有人可以在本地使用该会话)。
  7. 关闭远程会话。

相关内容