背景

常见的Linux服务端远程桌面有VNC xrdp Nomachine X2Go等。 其中,直接使用VNC的性能太差配置复杂安全性不佳,首先被排除。 而后三者各有优劣。

xrdp

Ubuntu 14.04自带的xrdp是0.6.0,存在一些问题,比如无法轻易实现恢复会话,不支持共享剪贴板等。 所以,更建议安装最新的0.9.0。 在Github上有一个项目叫X11RDP-o-Matic。可以自动编译安装xrdp,并安装X11rdp作为后台的X服务器。 之后的配置过程可以参考Ubuntu 14.04 – Perform a custom XRDP Install (using X11VNC)

Nomachine

Nomachine的3.x版本相当好用,但新推出的4.x版本则几乎无法在VPS上使用,而且官方关闭了3.x的程序的下载。 所幸,4.x的客户端兼容3.x的服务端。 有人制作了自动安装服务端的脚本,LXDE + NoMachine Low Memory Auto-Install Script。 需要注意的是,客户端需要选择按照NX的方式进行验证,并选择SSH协议连接。

X2Go

客户端的安装配置可以参考Installing the Qt-based X2Go Client

服务端的配置则在这条wiki,X2Go Server installation

桌面软件的选择

在VPS上,资源相对缺乏,所以更加推荐占用资源少的轻量级桌面。 其中的代表是xfce和lxde。 根据我的经验,更推荐xfce,lxde在使用X2Go时会有openbox占用CPU100%的情况出现。 在Ubuntu 14.04上,只需要一条命令即可安装xfce,apt install xfce4。

15.1.20更新

经过进一步比较,综合服务端、客户端、文件传输等方面来看,xrdp 是相对比较好的解决方案。 搭建过程可参考我的另一篇文章

其他可参考的文章

TUTORIAL: Setup x2goserver with xfce4 on Debian Wheezy 128M VPS

Setting a lightweight desktop environment on Ubuntu 11.04 or later