Ubuntu 远程桌面的方式

Ubuntu 远程桌面的方式提示 仅仅是按照记忆所写的笔记 如果你看到这篇笔记 按照操作出了问题 评论就好了 我会完善一下 笔记内容以外的问题不要评论 我不管 vino amp dconf editor 该方式适用于 ubuntudeskto 04 及以后版本 非常地方便 注意是官方发行的桌面版本 如果是这些版本就不要使用后面的方式了 不灵的 安装 vino amp dconf editorsudoap getinstallvi editor 运行 dconf editor

提示:仅仅是按照记忆所写的笔记,如果你看到这篇笔记,按照操作出了问题,评论就好了,我会完善一下。笔记内容以外的问题不要评论,我不管。


  1. vino & dconf-editor

    该方式适用于ubuntu desktop 18.04 及以后版本,非常地方便。注意是官方发行的桌面版本!如果是这些版本就不要使用后面3的vncserver方式了,不灵的!

    1. 安装vino & dconf-editor
      sudo apt-get install vino dconf-editor 
    2. 运行dconf-editor取消requlre-encryption选项
      这一步是必要的,不然无法访问
      在桌面找到该程序或命令行输入dconf-editor,打开该软件。
      org->gnome->desktop->remote-access页面找到equlre-encryption选项并关闭它。如图:
      配置截图








    3. 启用屏幕共享
      设置>共享>屏幕共享,将它打开。勾选允许屏幕共享&需要密码并设置密码。如图:
      设置截图




    4. 连接
      使用vnc远程软件连接5900端口即可,如果不能连接,看看端口是否被开放,这里不再赘述。一般没有问题。

  2. x11vnc

    通过x11vnc远程控制ubuntu桌面,是共享的同一个屏幕,它和1的vino是类似的,不过官方的桌面发行版对vino提供了GUI支持。

    1. 安装
      sudo apt install x11vnc 
    2. 设置密码
      x11vnc -storepasswd 
    3. 启动
      x11vnc -forever -shared -rfbuath ~/.vnc/passwd #注意若是ssh登录的用下面的指令 x11vnc -forever -shared -rfbauth ~/.vnc/passwd -display :0 -auth ~/.Xauthority 

      注意看输出的信息是监听哪个端口,一般是5900,随后连接该端口即可。
      远程软件和ubuntu是共享同一个屏幕的,两边的操作是同步的。

    4. 设置开机启动(一般情况下没有必要)
      #若不存在就创建 sudo touch /etc/init/x11vnc.conf #修改权限为可运行 sudo chmod a+w /etc/init/x11vnc.conf 
       sudo vi /etc/init/x11vnc.conf #修改为以下内容 start on login-session-start script x11vnc -forever -shared -rfbauth ~/.vnc/passwd -rfbport 5900 -display :0 -auth ~/.Xauthority -bg -o /var/log/x11vnc.log end script 
  3. vnc4server / tigervnc / tightvnc

    其实这几种vnc软件差别不大,安装后用法都是一样的。vnc4server在ubuntu 20版本的apt源中是没有的,用后两个之一就行了。tigervnctightvnc的一个分支。

    注意:使用vncserver方式远程桌面,被控端务必不要登录桌面,若登录了就注销,否则vnc远程软件会出现灰屏。反之,远程软件控制了桌面,被控端也无法通过display manager 方式或startx方式登录桌面,需要在vnc软件注销桌面登录。

    1. 安装
      sudo apt install vnc4serversudo apt install tigervnc-standalone-server tigervnc-commonsudo apt install tightvncserver

    2. 启动vncserver并修改配置
      1. 先启动一次
        vncserver 

        初次运行会要求设置密码,随后会生成配置文件

      2. 修改配置
        vi ~/.vnc/xstartup 

        以下取消注释

        unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS 

        末尾替换要启动的桌面,如xfce4

        exec startxfce4 
      3. 重新启动vncserver
        kill掉初次运行打开的会话,重新运行,如
        vncserver -kill :1 vncserver -geometry 1366x768 

        注意kill后面有空格。查看输出的信息,监听哪个端口,连接它。

  4. 使用ssh tunnel 加密vnc会话
    vnc会话是不加密的,它是明文传输内容的。如果就这样远程作业那是非常地不安全。通过ssh本地转发地方式可以达到加密的效果。
    注意,如果远程机器在国外不要这样做,容易被g…f…w阻断你机器的ip。




    1. 打开一个本地ssh会话,登录远程ssh时配置本地转发
      ssh -L 1234:localhost:5900 username@ipAddress:port 

      格式是这样的:
      ssh -L 本地地址:本地端口:目的地址:目的端口 跳转机用户@跳转机地址
      在这里省略了本地地址,本地端口可以是任意没有被占用的端口,比如搞成和远程机器一样的5900啥的。
      由于我想要远程桌面的机器与我登录ssh的机器是同一台,所以目的地址是localhost,当然也完全可以再加一个跳板机(登录ssh的那台机器),但是没那个必要。






    2. 使用vnc客户端连接本地端口
      如果本地机器开了防火墙,记得开放端口。
      这样我们的vnc会话经过ssh隧道传输数据,就安全多了。




  5. xrdp远程
    vnc是未加密的连接方式,不安全,还要ssh转发加密一次,怪麻烦的。
    而xrdp是加密的,但它不是独立工作的,需要vncserver配合。




    1. 安装xrdp & xorg & tigervnc(或其他vncserver软件)
      sudo apt insatll xrdp xorg tigervnc-standalone-server tigervnc-common 
    2. 修改配置
       vi /etc/xrdp/startwm.sh 
    3. 启动并连接
      windows自带的远程桌面连接软件就可以。Win+R > mstsc 即可打开。会话选xorg,输入用户名和密码连接即可。

    4. 出现的问题及解决方案
      不显示桌面,远程桌面连接软件蓝屏

      1. 想要xorg会话方式远程桌面,那远程机器是不能登录桌面的(这里和3vnc的问题是一样的),若登录了桌面,注销它再由远程软件访问。
      2. 若还不能访问,首先查看远程机器用户目录下.Xauthority&.ICEauthority 的用户&用户组,如果是root,就改成要登录的用户:
        sudo chown user:usergroup .Xauthority sudo chown user:usergroup .ICEauthority 

        造成这个问题的原因是在启动某些桌面服务时使用了sudo,导致以上文件权限被更改。比如在上面3启动vncserver时若使用了sudo会导致vnc软件无法连接,display manager无法登陆,解决方案也是修改文件权限。

  6. 其他远程软件TeamViewer、Nomachine等
    这些软件安装使用方便,但是速度不如xrdp方式,如果机器距离比较近,用这个就行,省事儿。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/222443.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午3:47
下一篇 2026年3月17日 下午3:47


相关推荐

  • Wasserstein距离的直观解释

    Wasserstein距离的直观解释Wasserstein EM 距离的易懂解释最近在学习 Wgan 相关知识时 看到 wasserstein 距离的相关数学概念 表示非常懵逼 结合着李宏毅教授的网课 觉得理解了一点 但是还是不透彻 于是乎重新拾起概率论课本 仔细研究了一番 有以下直观的认识 1 Wasserstein EarthMove 距离的直观理解 1 所谓 EM 距离 就是衡量两个分部之间的差异的一种计算方法 即把一个分布变换成另外一个分布需要的能量 老板要给建筑工人搞建筑发的工资 接下来我将通过一个小例子详细解释一下它 假设现在

    2026年3月19日
    1
  • libcurl的用法

    libcurl的用法原文地址 http curl haxx se libcurl c libcurl tutorial html nbsp nbsp nbsp 译者 JGood http blog csdn net JGood nbsp nbsp nbsp nbsp 译者注 这是一篇介绍如何使用 libcurl 的入门教程 文档不是逐字逐句按原文翻译 而是根据笔者对 libcurl 的理解 参考原文写成 文中用到的一些例子 可能不是出自原文 而是笔者

    2026年3月16日
    2
  • 工具:数据库设计ER图

    工具:数据库设计ER图一、简介我们在做数据库设计的时候经常需要系统性的去认识系统涉及到的全部对象,以及对象间的相互关系,如果系统复杂的话,如果不借助合适工具的话,到最后设计出来的数据库肯定会存在或多或少的问题,不过前辈们早就遇到过这类问题,并提供了具体的解决方案,那就是本文要讲的ER图(EntityRelationshipDiagram),ER图提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。就…

    2022年6月21日
    31
  • mysql lsn_MySQL数据库之mysql原理~LSN那点事情

    mysql lsn_MySQL数据库之mysql原理~LSN那点事情本文主要向大家介绍了 MySQL 数据库之 mysql 原理 LSN 那点事情 通过具体的内容向大家展现 希望对大家学习 MySQL 数据库有所帮助 一简介 今天咱们来聊聊 LSN 号二查看 lsn showenginein

    2026年3月17日
    1
  • iframe自适应高度_iframe动态自适应高度

    iframe自适应高度_iframe动态自适应高度转载(来源忘记了。。。)<!–内容部分–><divclass=”con”><iframeid=”mainFrame”name=”mainFrame”src=”main.html”style=”width:100%;”frameborder=”0″scrolling=”no”onLoad=”this.height=100″></iframe></div>$(function(){//时间控制每

    2022年10月12日
    4
  • IntelliJ IDEA使用教程(新手入门–持续更新)[通俗易懂]

    IntelliJ IDEA使用教程(新手入门–持续更新)[通俗易懂]idea使用教程一、下载安装二、基础配置及插件安装1.基础配置1.1配置jdk1.2配置maven1.3配置git1.4开启自动编译1.5调整字体(参照配置入口,大家可以根据喜好自行调整,记得调整完每一步都要点击apply)1.6取消大小写敏感,取消勾选1.7设置统一编码为utf-82、插件下载2.1[Mybatis](https://how2j.cn/k/mybatis/mybatis-tutorial/1087.html)2.2[Lombok](https://www.zhihu.com/q

    2022年8月29日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号