zoukankan      html  css  js  c++  java
  • Linux的远程桌面折腾指南

    因为实验服务器需要远程提供给研一童鞋使用,这两天折腾了一下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远程连接,此处可在连接设置中调整远程屏幕分辨率。
    可直接使用Windows远程连接
    连接后登录界面
    xrdp连接后登录界面
    成功连接后界面
    登录后界面

    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上设置允许远程桌面连接即可,注意取消勾选网络级别身份验证。

    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登录指令-ssh
    CentOS下搭建Hive
    server 2008 ftp 环境重点说明
    搭建ftp环境
    supesite 连 discuz 论坛记录
    安装ucenter 步骤详解及supesite 安装详解
    最近打算 学点东西,不能 再这样下去了
    今天知道了一个 反向代理,是apache 的一个功能,这里记录一下
    最近 弄了一个 discuz 7.2,管理员发帖 会出现 很多错误,解决 办法 在别的帖子中找到了
  • 原文地址:https://www.cnblogs.com/carlsplace/p/8323800.html
Copyright © 2011-2022 走看看