如何使用 x2go 在 Linux VPS 上设置远程桌面
随着一切都转移到云端,虚拟化远程桌面作为提高员工生产力的一种方式在业界越来越受欢迎。特别是对于那些需要在多个位置和设备之间不断漫游的人来说,远程桌面可以让他们保持无缝连接,同时保留他们的工作环境。远程桌面对雇主也很有吸引力,可以提高工作环境的敏捷性和灵活性,并通过硬件整合和桌面安全强化降低 IT 成本。
在 Linux 世界中,当然不缺少设置远程桌面环境的选择,有许多协议(例如 RDP、RFB、NX)和服务器/客户端实现(例如 TigerVNC、RealVNC、FreeNX、x2go、X11vnc、TeamViewer)可用。
X2Go 脱颖而出,它是基于 NX 的远程桌面服务器和客户端的开源 (GPLv2) 实现。在本教程中,我将演示如何使用 X2Go 为 Linux VPS 设置远程桌面环境。
什么是 X2Go?
X2Go 的历史可以追溯到 NoMachine 的 NX 技术。 NX 远程桌面协议旨在通过利用积极的压缩和缓存来处理低带宽和高延迟的网络连接。后来,NX 变成了闭源代码,而 NX 库则变成了 GPL。这导致了多个基于 NX 的远程桌面解决方案的开源实现,其中之一就是 X2Go。
与 VNC 等其他解决方案相比,X2Go 带来了哪些优势? X2Go 继承了 NX 技术的所有高级功能,因此它自然可以在慢速网络连接上正常工作。此外,X2Go 拥有通过其内置的基于 SSH 的加密来确保安全性的出色记录。不再需要手动设置 SSH 隧道。 X2Go 提供开箱即用的音频支持,这意味着远程桌面上的音乐播放是通过网络传送(通过 PulseAudio)并馈送到本地扬声器中的。在可用性方面,您在远程桌面上运行的应用程序可以无缝呈现为本地桌面上的单独窗口,让您产生该应用程序实际上在本地桌面上运行的错觉。正如您所看到的,这些是基于 VNC 的解决方案所缺乏的一些强大功能。
X2Go的桌面环境兼容性
与其他远程桌面服务器一样,X2Go 服务器也存在已知的兼容性问题。 KDE3/4、Xfce、MATE 和 LXDE 等桌面环境对 X2Go 服务器最友好。但是,您的情况可能会因其他桌面管理器而异。例如,GNOME 3、KDE5、Unity 的更高版本已知与 X2Go 不兼容。如果远程主机的桌面管理器与 X2Go 兼容,您可以按照本教程的其余部分进行操作。
在 Linux 上安装 X2Go 服务器
X2Go 由远程桌面服务器和客户端组件组成。让我们从 X2Go 服务器安装开始。我假设您已经在远程主机上启动并运行了一个与 X2Go 兼容的桌面管理器,我们将在其中安装 X2Go 服务器。
请注意,X2Go 服务器组件没有需要在启动时启动的单独服务。您只需确保 SSH 服务已启动并正在运行。
对于 Ubuntu 或 Linux Mint:
配置 X2Go PPA 存储库。 X2Go PPA 适用于 Ubuntu 14.04 及更高版本。
$ sudo add-apt-repository ppa:x2go/stable
$ sudo apt-get update
$ sudo apt-get install x2goserver x2goserver-xsession
对于 Debian(Wheezy):
$ sudo apt-key adv --recv-keys --keyserver keys.gnupg.net E1F958385BFE2B6E
$ sudo sh -c "echo deb http://packages.x2go.org/debian wheezy main > /etc/apt/sources.list.d/x2go.list"
$ sudo sh -c "echo deb-src http://packages.x2go.org/debian wheezy main >> /etc/apt/sources.list.d/x2go.list"
$ sudo apt-get update
$ sudo apt-get install x2goserver x2goserver-xsession
对于费多拉:
$ sudo yum install x2goserver x2goserver-xsession
对于 CentOS 或 RHEL:
首先启用 EPEL 存储库,然后运行:
$ sudo yum install x2goserver x2goserver-xsession
在 Linux 上安装 X2Go 客户端
在要连接到远程桌面的本地主机上,安装 X2GO 客户端,如下所示。
对于 Ubuntu 或 Linux Mint:
配置 X2Go PPA 存储库。 X2Go PPA 适用于 Ubuntu 14.04 及更高版本。
$ sudo add-apt-repository ppa:x2go/stable
$ sudo apt-get update
$ sudo apt-get install x2goclient
对于 Debian(Wheezy):
$ sudo apt-key adv --recv-keys --keyserver keys.gnupg.net E1F958385BFE2B6E
$ sudo sh -c "echo deb http://packages.x2go.org/debian wheezy main > /etc/apt/sources.list.d/x2go.list"
$ sudo sh -c "echo deb-src http://packages.x2go.org/debian wheezy main >> /etc/apt/sources.list.d/x2go.list"
$ sudo apt-get update
$ sudo apt-get install x2goclient
对于费多拉:
$ sudo yum install x2goclient
对于 CentOS 或 RHEL:
首先启用 EPEL 存储库,然后运行:
$ sudo yum install x2goclient
使用 X2Go 客户端连接到远程桌面
现在是时候连接到远程桌面了。在本地主机上,只需运行以下命令或使用桌面启动器即可启动 X2Go 客户端。
$ x2goclient
输入远程主机的 IP 地址和 SSH 用户名。另外,指定会话类型(即远程主机的桌面管理器)。

如果需要,您可以自定义其他内容(通过按其他选项卡),例如连接速度、压缩、屏幕分辨率等。


当您启动远程桌面连接时,系统将要求您登录。输入您的 SSH 登录名和密码。

成功登录后,您将看到远程桌面屏幕。

如果您想测试 X2Go 的无缝窗口功能,请选择“单一应用程序”作为会话类型,并指定远程主机上可执行文件的路径。在此示例中,我选择远程 KDE 主机上的 Dolphin 文件管理器。

成功连接后,您将看到本地桌面上打开一个远程应用程序窗口,而不是整个远程桌面屏幕。

结论
在本教程中,我演示了如何在 Linux VPS 实例上设置 X2Go 远程桌面。如您所见,整个设置过程非常轻松(如果您使用正确的桌面环境)。虽然存在一些特定于桌面的怪异之处,但 X2Go 是一个可靠的远程桌面解决方案,安全、功能丰富、快速且免费。
X2Go 的哪个功能最吸引您?请分享您的想法。