详解:在windows上远程控制Ubuntu

前言

这里主要分享:
1)windows如何远程控制Ubuntu个人电脑(即:在windows上远程控制Ubuntu)。

注:我的ubutnu系统是14.04.

1 windows远程控制Ubuntu个人电脑

理论上,参考[1],[2],[3]就可以成功远程控制。
然而问题总比办法多  。

不过这里先记录下我的尝试,再说问题,再说解决办法。

1.1 在Ubuntu上配置、安装远程控制相关的软件

主要参考[3]就可以了:

1.1.1 先配置Desktop Sharing

Desktop Sharing 在中文Ubuntu系统中叫做桌面共享,如果没有,可以到Ubuntu应用商店搜索,直接下载就好。我的系统一开始就没有。

1)左上角搜索调出Desktop Sharing:
在这里插入图片描述2)下图为Desktop Sharing配置界面,大概分为三栏:
共享栏:我全部打钩了,表示允许其他用户访问并控制我的电脑。
安全栏:我都没勾,感觉没必要。
通知栏:我选了always,这样的话你的桌面右上角就会有Desktop sharing的图标(其实这里选任何一项都可以,问题不大)。
在这里插入图片描述

1.1.2 安装xrdp,vncserver

参考 [3] ,[4],安装xrdp和vnc4server:
sudo apt-get install xrdp vnc4server xbase-clients


Q:xrdp是什么?vnc4server呢?
A:可以参考 [5],

使用rdp协议访问远程Linux桌面
VNC是大部分Linux发行版默认的基于RFB协议的远程桌面程序。

根据xrdp官网 [6] 描述:xrdp的设计是为了提供一个Linux终端服务端,这个服务端能够接受来自rdesktop、freerdp和微软终端服务端/远程桌面客户端的连接。

xrdp: An open source remote desktop protocol(rdp) server.
The goal of this project is to provide a fully functional Linux terminal server, capable of accepting connections from rdesktop, freerdp, and Microsoft’s own terminal server / remote desktop clients.


1.1.3 配置dconf-editor

还是左上角搜索,然后打开dconf-editor(如果没有,直接在终端输入:sudo apt-get install dconf-editor即可)。

如下图,先依次点选org->gonme->desktop->remote-access,然后按照图中配置打钩即可。(我是把require-encryption的钩去掉了):

在这里插入图片描述

1.1.4 查看Ubuntu的防火墙

防火墙可能会阻断远程连接,所以这里查看下防火墙的状态,在终端输入:
sudo ufw status

我的输出是:Status: inactive(即:处于关闭状态)

那应该就没问题了。
此外,更多Ubuntu下防火墙有关操作可以参考: [7],我常用的是sudo ufw enable(打开防火墙)和sudo ufw disable(关闭防火墙)

1.1.5 查看Ubuntu的外网ip地址

为什么要查外网ip?
因为远程连接需要用到(需要输入外网ip来建立连接)。

有两种方法:
1)在终端输入curl cip.cc,就会输出本机的外网ip
2)直接百度搜索输入ip,就会在第一栏显示你的外网ip:
在这里插入图片描述

1.2 在windows上的操作

1.2.1 在vnc viewer或者系统自带远程桌面控制上连接

1)在vnc viewer上连接:很简单,根据 [3] 来操作就行。
2)在自带远程桌面控制上连接:左下角搜索”远程“,打开远程桌面连接,然后输入你的Ubuntu个人电脑的公网ip。即可。[3]

2 遇到的问题

在进行了以上的操作之后,理论上都没有问题了。
但是!!!

windows上在输入Ubuntu个人电脑的外网ip之后一直报错,弹出的窗口说连接失败,可能没有打开远程控制之类的信息。(随后在windows上安装了vnc viewer,但是依旧无法连接,显示:connection time out。)

我参考了很多文献,看了快一天,各种方法都尝试了,但是一直无法连接成功。

2.1 第一个探索

我退而求其次,既然远程连接失败,那么我的windows和ubutnu电脑之间能够相互ping通吗?

我在windows的cmd中输入:ping <my_ubuntu_external_address> 即:ping我的Ubuntu公网ip
无法成功,显示超时。

中间还试了:设置windows的防火墙 [8] ,还是没用。

注意:我在window上ping 我的ubuntu阿里云服务器的公网ip,是没有问题的。

2.2 第二个探索

再换一种思路,那么我的windows和ubuntu之间能够建立ssh连接吗?
我根据 [8], 输入了apt-get install openssh-server 等一系列指令,但是没用。
还是显示超时,类似于:connection timed out这样的提示

2.3 第三个探索

再换一个思路,我要看下我的windows电脑是不是能够远程控制我的Ubuntu服务器(阿里云)呢?

为此我给ubuntu服务器特意装了个界面(参考我之前文章:https://blog.csdn.net/weixin_39278265/article/details/86549600 )。

然后,发现可以。就是卡了一点。

2.4 第四个探索

我实在找不到原因了,只好根据[1],安装了xubuntu的桌面。

但是还是没用咯。

找时间得把这个xubuntu小老鼠桌面给卸了,感觉不是很习惯这样的界面。

2.4 综上总结

根据上述三个尝试的结果,我认为要解决问题,下一步可能需要:
1)重新卸载所有的xrdp这一类软件:即根据 [9],看是不是安装顺序问题。
2)一直感觉自己的Ubuntu 防火墙有问题,因为当时为了解决问题,我在自己Ubuntu电脑上疯狂乱试,好像觉得防火墙确实有点怪怪的,以后还得好好研究下。
3)想找到ping不通的原因
4)可能是Ubuntu 14的原因?(要升级?):感觉有可能是系统的问题,有空想升级到16.04,主要是要备份,感觉好麻烦。

最后我认为 是我的ubuntu网络有问题,有可能我的ubuntu查到的外网ip不是真正的外网ip。
参考:[12],[13],[14]。
在这里插入图片描述尴尬的是,今早我换了移动网还是不行。
不过,我觉得可能确实是isp(https://baike.baidu.com/item/ISP/10152?fr=aladdin 即:互联网服务提供商)的问题。

3 最后的‘骄傲’(解决方案)

在请教同学之后,不搞xrdp、vnc这一套了,转而使用 teamviewer

确实有用,给力。

1)在官网 https://www.teamviewer.com/en/download/previous-versions/ 下载Ubuntu版本,因为我是Ubuntu 14.04的,所以最新版本(64位和32位都试了)总是提示不成功(apt-get install -f都搞不定。所以我才在这个previous-versions板块下载的,如下图,我选的是Ubuntu下面的 x86 32bit

在这里插入图片描述然后根据[10] 的指令安装就ok。

注:在此过程中参考了 [10] 和 [11]。

2)同理,给windows也装上teamviewer
3)然后在windows的teamviewer上输入ubuntu中teamviewer对应的id和密码就ok。
最后成功连接上,实现了在windows上远程控制Ubuntu的图形化界面

总结

有很多值得总结的地方。
1)还是要多交流吧;
2)写文章其实还可以更考虑读者,比如说一开头就要循循善诱,循序渐进,简洁明了有说服力;
3)这两天尝试的东西太多了,很多都没有记录下来。而且论文阅读也松懈了,,,得合理安排时间。
感觉还是“一次只能做一件事”,但是这样好像不太好

参考文献

[1] windows如何桌面远程ubuntu https://blog.csdn.net/u011304615/article/details/78212790

[2] win10远程控制ubuntu16.04 https://blog.csdn.net/qq_21057881/article/details/71976586

[3] VNC实现Windows远程访问Ubuntu 16.04(无需安装第三方桌面,直接使用自带远程工具) https://www.cnblogs.com/xuliangxing/p/7642650.html

[4] 用ubuntu的 apt-get install 命令安装多个软件:怎么搞? https://zhidao.baidu.com/question/364703599302377252.html

[5] XRDP与VNC的关系 https://www.cnblogs.com/yxwkf/p/5337567.html

[6] xrdp www.xrdp.org

[7] 如何启动、关闭和设置ubuntu防火墙 https://www.cnblogs.com/yuxuan007/p/8043419.html

[8] 开启win10下Ubuntu子系统的SSH服务 https://blog.csdn.net/zhouzme/article/details/81087837

[9] Windows10远程桌面无法连接Ubuntu https://www.jianshu.com/p/a0e1684f00cb
这里给了一个解决方案。但是不确定好不好用

[10] Ubuntu16.04 安装Teamviewer https://www.cnblogs.com/wmr95/p/7574615.html

[11] ubuntu14.04 64bit安装teamviewer https://www.cnblogs.com/dakewei/p/5926119.html

[12] 大部分电信外网ping不通ubuntu服务器的原因? https://segmentfault.com/q/1010000000266925

[13] traceroute命令初探 https://www.cnblogs.com/beyond_dxb/p/8383821.html

[14] 大部分电信外网ping不通(不是公网ping不通)ubuntu服务器的原因? https://www.v2ex.com/t/80179#reply2

  • 4
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
Ubuntu 20.04上安装XRDP服务器(远程桌面)可以让用户通过远程连接访问Ubuntu桌面。以下是详细的安装步骤: 1. 打开终端,使用以下命令更新软件包列表: ```shell sudo apt update ``` 2. 接着安装xrdp软件包: ```shell sudo apt install xrdp ``` 3. 安装完毕后,XRDP会自动启动并运行,无需手动启动。你可以通过以下命令检查XRDP的运行状态: ```shell systemctl status xrdp ``` 4. Ubuntu默认情况下使用GDM3作为桌面环境管理器。为了使xrdp正常工作,你需要编辑`/etc/xrdp/startwm.sh`文件。使用以下命令打开该文件: ```shell sudo nano /etc/xrdp/startwm.sh ``` 5. 在文件末尾,找到`unset DBUS_SESSION_BUS_ADDRESS`这一行,将其注释掉(在行首添加`#`号): ```shell # unset DBUS_SESSION_BUS_ADDRESS ``` 6. 保存并关闭文件,然后重新启动xrdp服务: ```shell sudo systemctl restart xrdp ``` 7. 如果你使用的是默认的GDM3桌面环境管理器,则完成上述步骤后,你应该可以通过远程连接访问Ubuntu桌面了。 8. 如果你使用的是其他桌面环境(比如Xfce),你还需要编辑`/etc/xrdp/startwm.sh`文件,并在文件末尾添加以下内容(以支持Xfce桌面环境): ```shell startxfce4 ``` 9. 保存并关闭文件,然后重新启动xrdp服务: ```shell sudo systemctl restart xrdp ``` 10. 现在,你应该可以通过远程连接访问Ubuntu上的Xfce桌面了。 希望以上步骤对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值