因为实验服务器需要远程提供给研一童鞋使用,这两天折腾了一下Linux的远程桌面,在此记录总结一下。服务器系统为Lubuntu 16.04

远程登录到Linux

方案一:简单使用——x11vnc

单用户的情况下,使用x11vnc是最简单的方法,详细设置过程可以参看这篇文章,该文提供了自动配置脚本。这里不再赘述。

注意事项:

  1. 脚本最后有一段关机命令,注意根据需求修改或者注释掉
  2. x11vnc和Lubuntu的light-locker锁屏程序用冲突,详见bug,自动锁屏后,VNC会黑屏,无法进入桌面。

    我的解决方案是sudo apt autoremove light-locker,不用锁屏程序了,或者换成其他自己喜欢的

方案二:多用户登录——xrdp

对于多用户登录使用的情况,推荐使用xrdp。使用VNC也可以实现多用户登录方案,可参考教程。相比xrdp,VNC方案在安全性方面稍差,配置也更麻烦,我按照教程没有成功配置,感兴趣的童鞋可以折腾一下。

具体配置工作如下:

  1. sudo apt install xrdp 安装xrdp
  2. 在需要远程登录的用户的home目录下,修改~/.xsession文件,添加桌面session启动命令。

    如Xfce桌面添加:xfce4-session,(**注意:Xfce在vnc下有bug,tab补全功能无法使用,解决方法参见链接),如Lubuntu添加:lxsession -e LXDE -s Lubuntu
  3. 注意检查/etc/xrdp/startwm.sh最后一行为. /etc/X11/Xsession
  4. 启动xrdp服务,sudo sysemctl start xrdp
  5. 设置xrdp服务开机自启,sudo systemctl enable xrdp

xrdp连接效果展示:

可直接使用Windows远程连接,此处可在连接设置中调整远程屏幕分辨率。



连接后登录界面



成功连接后界面

xrdp后续配置

20180419更新

默认配置的xrdp,每次远程连接会创建新的会话,这样就不能继续上一次会话了。可以通过修改配置文件,添加Reconnect选项来解决(附:参考资料1参考资料2)。

/etc/xrdp/xrdp.ini文件末尾添加如下内容:

[xrdp8]
name=Reconnect
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=ask5910

这样在下次登录的时候,可以选择Reconnect选项,配置中设置了默认的端口号5910,使用netstat -tunlp命令可以看到已有xrdp进程使用的端口,在重连时根据实际情况修改。

/etc/profile中设置不生效

实际使用中发现,/etc/profile在本地生效,远程就不生效。解决方法如下:

  • vnc服务器启动时读取~/.vnc/xstartup,可以在该文件中添加相关配置
  • 在.bashrc中添加source /etc/profile可解决,但是会造成本地的设置重复的问题

Linux远程登录到Windows

方案一:rdesktop

该方案只需要在Windows上设置允许远程桌面连接即可,注意取消勾选网络级别身份验证。

Linux下命令示例:rdesktop [ip] -f -u [user name] -p [passwd] -r sound:local

rdesktop也可以远程连接开启xrdp服务的Linux机器。连接Windows10需要1.8.3版本的rdesktop。

文件共享与其他优化

具体可参考使用rdesktop来在Windows和Linux之间共享数据

rdesktop -u username a.b.c.d -p my-password -g 1200x900 -x 0x80 -r sound:local -r disk:LinuxPictures=/home/username/Pictures

其中-x优化字体平滑,-r sound-r disk需要同时设置才能适合共享文件路径生效。

优点:

  • 传输效率高,可传输声音
  • 隐私性好,远程机器的显示器不会显示正在操作的内容。

缺点:

  • 只支持OpenGL 1.1版本,无法运行很多OpenGL图形相关程序,如部分游戏。

方案二:vnc-viewer

该方案在Windows上安装realvnc connect并登录账号即可,免费版realvnc connect无法通过ip直连,vnc-viewer只可以登录账号才能发现主机。

优点:

  • 就是远程操作桌面,除了延迟,和本机没有区别
  • 相比rdesktop方案,对图形相关的程序支持更好,所以可以远程玩游戏了

缺点:

  • 无法传输声音,VNC协议不支持该功能
  • 远程机器的屏幕会显示正在进行的操作,VNC直接传输的屏幕画面,所以隐私性,安全性差点

Linux的远程桌面折腾指南的更多相关文章

  1. windows server 2012 r2 远程桌面连接指南

    具体详情请阅览文档  http://pan.baidu.com/s/1jHTCpW6 windows server 2012 r2 远程桌面连接指南 - 作者 rick·bao - 日期 2016-0 ...

  2. Linux/Windows远程桌面

    WINDOWS远程连接LINUX配置(LINUX VNC Server配置):   1.查看本机是否有安装vnc(centOS5默认有安装vnc) rpm -q vnc vnc-server 如果显示 ...

  3. 开启Linux VNC远程桌面

    Xwindows:gnome (红帽默认安装的图形界面)   一, 确认及安装VNCSERVER. 1,首先确认你服务器是否配置了VNCSERVER,可以在命令行下敲入以下命令查看: [root@lo ...

  4. 适用于kali linux的远程桌面开启方法(从windows xp 远程登录到kali linux )

    为了解决Windows远程桌面访问Ubuntu 12.04 之一 中提到的VNC远程桌面的缺点(见http://www.linuxidc.com/Linux/2012-07/64801.htm),我们 ...

  5. Windows与Linux相互远程桌面连接

        对于远程桌面连接Linux,大家可能会第一时间想到使用VNC,,远程桌面Windows,大家第一时间会想到使用Windows自带的远程桌面.那么有没有办法,使得在Linux中可以远程Windo ...

  6. Linux的远程桌面配置

    一.Ubuntu的远程桌面 Ubuntu默认已安装好VNC服务端组件vino-server,只需要在“系统设置->首选项->桌面共享”中设置即可. 1.设置桌面共享首选项 2.设置好之后, ...

  7. [运维工具]linux下远程桌面rdesktop安装和使用

    依然是解压 configure make make install 这些步骤 rdesktop -f 16 192.168.16.90 -f是全屏,退出全屏是CRTL+ALT+ENTER 记录一个li ...

  8. linux连接远程桌面

    #!/usr/bin/env python3 #-*-encoding:utf-8-*- import re import os import urllib.request, urllib.parse ...

  9. Linux下远程桌面Windows

    rdesktop-1.7.0.tar.gz [root@localhost fcitx]# tar rdesktop-1.7.0.tar.gz [root@localhost fcitx]#cd rd ...

随机推荐

  1. Ubuntu 双网卡route

    ip route flush table sz ip route add default via 183.2.218.254 dev eth0 src 183.2.218.4 table sz ip ...

  2. 开启mysql审计功能

    下面方式是在线开启,重启后会失效: 1.mysql社区版没有审计插件,先获取server_audit.so文件,我是先在一台测试服务器上安装了一个mariadb数据库,然后搜索find / -name ...

  3. 为什么“或命题"真假的判断是有真则真?

    我:为什么"或命题"真假的判断是有真则真? 长沙刘老师:难道不是吗? 我:是经验,约定,还是严格证明? L神:为什么不自己看书? 我:想严格推理证明 L神: L神:我学过的教材里是 ...

  4. MYSQL<一>

    -- ########## 01.数据库概述 ########## -- 1.信息:现实世界中各种可以接触到的东西 -- 2.数据:信息在计算机世界中的映射(反映) -- Java中可以把数据存储在内 ...

  5. 理解 es7 async/await

    简介 JavaScript ES7 中的 async / await 让多个异步 promise 协同工作起来更容易.如果要按一定顺序从多个数据库或者 API 异步获取数据,你可能会以一堆乱七八糟的 ...

  6. 【NOIP2014模拟8.25】设备塔

    题目 为了封印辉之环,古代塞姆利亚大陆的人民在异空间中建造了一座设备塔. 简单的说,这座设备塔是一个漂浮在异空间中的圆柱体,圆柱体两头的圆是计算核心,而侧面则是 传输信息所用的数据通道,划分成N *m ...

  7. 设置HTML的TextArea标记跟随文本内容自动设置高度

    写内容的时候用的是textarea来写,可以换行,然后预览页面也要显示是换行才行,所以预览页面还是要用textarea来显示, 样式去掉边框,不可以拉伸,不可编辑 // html <textar ...

  8. js-计算textarea可剩余的字数???

    效果图 HTML: JS:

  9. 谁掳走了 nginx.pid 文件?

    1.重载配置 执行 nginx  -s   reload  命令,报错:找不到 nginx.pid 文件,无法打开.曾经屡试不爽的命令,此时,竟然失灵了? 刚开始,我一头雾水,有点丈二和尚摸不着头脑… ...

  10. node.js入门学习(六)--express

    1.官网:http://expressjs.com/ 中文:http://www.expressjs.com.cn/ 2.HelloWorld 1)mkdir node-express-demo 2) ...