因为实验服务器需要远程提供给研一童鞋使用,这两天折腾了一下Linux的远程桌面,在此记录总结一下。服务器系统为Lubuntu 16.04
远程登录到Linux
方案一:简单使用——x11vnc
单用户的情况下,使用x11vnc是最简单的方法,详细设置过程可以参看这篇文章,该文提供了自动配置脚本。这里不再赘述。
注意事项:
- 脚本最后有一段关机命令,注意根据需求修改或者注释掉
- x11vnc和Lubuntu的light-locker锁屏程序用冲突,详见bug,自动锁屏后,VNC会黑屏,无法进入桌面。
我的解决方案是sudo apt autoremove light-locker
,不用锁屏程序了,或者换成其他自己喜欢的
方案二:多用户登录——xrdp
对于多用户登录使用的情况,推荐使用xrdp。使用VNC也可以实现多用户登录方案,可参考教程。相比xrdp,VNC方案在安全性方面稍差,配置也更麻烦,我按照教程没有成功配置,感兴趣的童鞋可以折腾一下。
具体配置工作如下:
sudo apt install xrdp
安装xrdp- 在需要远程登录的用户的home目录下,修改
~/.xsession
文件,添加桌面session启动命令。
如Xfce桌面添加:xfce4-session
,如Lubuntu添加:lxsession -e LXDE -s Lubuntu
- 注意检查
/etc/xrdp/startwm.sh
最后一行为. /etc/X11/Xsession
- 启动xrdp服务,
sudo sysemctl start xrdp
- 设置xrdp服务开机自启,
sudo systemctl enable xrdp
xrdp连接效果展示:
可直接使用Windows远程连接,此处可在连接设置中调整远程屏幕分辨率。
连接后登录界面
成功连接后界面
Linux远程登录到Windows
方案一:rdesktop
该方案只需要在Windows上设置允许远程桌面连接即可,注意取消勾选网络级别身份验证。
Linux下命令示例:rdesktop [ip] -f -u [user name] -p [passwd] -r sound:local
rdesktop也可以远程连接开启xrdp服务的Linux机器。连接Windows10需要1.8.3版本的rdesktop。
优点:
- 传输效率高,可传输声音
- 隐私性好,远程机器的显示器不会显示正在操作的内容。
缺点:
- 只支持OpenGL 1.1版本,无法运行很多OpenGL图形相关程序,如部分游戏。
方案二:vnc-viewer
该方案在Windows上安装realvnc connect并登录账号即可,免费版realvnc connect无法通过ip直连,vnc-viewer只可以登录账号才能发现主机。
优点:
- 就是远程操作桌面,除了延迟,和本机没有区别
- 相比rdesktop方案,对图形相关的程序支持更好,所以可以远程玩游戏了
缺点:
- 无法传输声音,VNC协议不支持该功能
- 远程机器的屏幕会显示正在进行的操作,VNC直接传输的屏幕画面,所以隐私性,安全性差点