Windows 远程桌面连接Ubuntu操作以及各种问题解决

https://blog.csdn.net/qq_22370409/article/details/88914093


很多情况下,有必要的使用Windows 远程登录Ubuntu系统继续学习以及工作。主要分为两种。

  第一种:通过SSH服务(使用xshell/SecureCrt等工具)来远程访问,编写终端命令,不过这个是无界面的,很多人也喜欢这种方式,因为快捷方便,但是不足的地方没有可视化图形界面。如果工作或者学习当中需要图形界面的操作,则选择第二种

  第二种:通过可视化界面远程访问,像Windows下的自带的远程工具一样,能够以图形化的界面远程操作完成以下使用SSH连接无法实现的操作。

该文章只讲述第二种,如有看客需要第一种,请自行百度或者留言。

在Ubuntu这一端,在终端执行以下指令:

1. 

sudo apt-get install xrdp

2. 

sudo apt-get install vnc4server   // Ubuntu 20.04  则 sudo apt install tightvncserver

3.

sudo apt-get install xubuntu-desktop

安装完毕后:

4. 继续执行   echo "xfce4-session" >~/.xsession

5. 进入系统-》首选项-》桌面共享,或者直接搜索桌面共享,如图所示

将【允许其他人查看您的桌面】这一项勾上,如图所示:

6. 在终端执行:

  sudo service xrdp restart

7. 最后查询Ubuntu的 IP地址

在终端下执行  ifconfig 指令获得ip地址


以上就是在Ubuntu的基本设置。

下面操作请在Windows下执行

按win+r 跳出如下窗口,并输入mstsc,回车

然后输入 Ubuntu的ip 地址 如:192.168.0.103,回车即可


然后将按以下图片所示:

Module  : 默认不变

username: 输入ubuntu的用户名

password: 输入 ubuntu用户的对应密码即可。

以上是完成基本远程连接的操作。


以下是各种错误的解决方案:

如果你按上面执行后还是无法远程连接,请多次检查设置后,再看下文:


第一步: ping ubuntu电脑的对应ip,来排除是否网络问题:

ping 192.168.0.103

PING 192.168.0.103 56(84) bytes of data.

64 bytes from 192.168.0.103: icmp_seq=1 ttl=64 time=8.91 ms

说明网络不是问题,如果不是如上显示请检查网络问题

第二步:  在Ubuntu电脑上或者ssh进入

执行   /etc/init.d/xrdp restart    //启动 xrdp 服务

Stopping xrdp: sesman xrdp.

Starting xrdp: It looks like xrdp is allready running,

if not delete the xrdp.pid file and try again xrdp sesman.

结果出错

解决方案:

查看是否还有xrdp 进程在运行

root@healer:~# ps -A | grep sesman

13244 pts/3    00:00:00 sesman

root@healer:~# ps -A | grep xrdp  

显示没有xrdp 进程在运行,启动 xrdp  进程

root@healer:~# /etc/init.d/xrdp start    //依然出错

Starting xrdp: It looks like xrdp is allready running,

if not delete the xrdp.pid file and try again

删除 xrdp.pid 文件再启动

root@healer:~# rm /var/run/xrdp/xrdp.pid

root@healer:~# # /etc/init.d/xrdp start

Starting xrdp: xrdp sesman.

root@healer:/var/run/xrdp# netstat -tnl

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local         Address           Foreign Address         State      

tcp        0      0 0.0.0.0:3350            0.0.0.0:*               LISTEN  

tcp        0      0 0.0.0.0:3389            0.0.0.0:*               LISTEN  

tcp        0      0 0.0.0.0:5910            0.0.0.0:*               LISTEN  

最后:

启动xrdp服务,

sudo /etc/init.d/xrdp restart

此时会启用相应端口,配置方面默认即可。

通过命令:

netstat -tnl

查看 3350 3389 5910 这三个端口处于LISTEN,一般就没问题了。

再重新在windows电脑上远程连接。


如果还是远程连接不上:请执行以下操作

sudo vim /etc/xrdp/sesman.ini,添加如下两行:

param8=-SecurityTypes

param9=None

接着执行

rm /var/run/xrdp/xrdp.pid

sudo /etc/init.d/xrdp restart

最后windows那端继续执行远程链接即可。




运行一段时间后,出现xrdp_mm_process_login_response: login failed

问题原因:远程桌面没有正确关闭,虽然在windows 系统关闭远程桌面连接,但是在里linux上的进程还在运行,导致连接数量达到上限,出现问题。

解决:通过设置sesman.in文件内的参数,解决。

root@healer:~# cat /etc/xrdp/sesman.ini

[Globals]

ListenAddress=127.0.0.1

ListenPort=3350

EnableUserWindowManager=1

UserWindowManager=startwm.sh

DefaultWindowManager=startwm.sh

[Security]

AllowRootLogin=1

MaxLoginRetry=4

TerminalServerUsers=tsusers

TerminalServerAdmins=tsadmins

[Sessions]

X11DisplayOffset=10

MaxSessions=50

KillDisconnected=1

IdleTimeLimit=0

DisconnectedTimeLimit=0

[Logging]

LogFile=/var/log/xrdp-sesman.log

LogLevel=DEBUG

EnableSyslog=0

SyslogLevel=DEBUG

[X11rdp]

param1=-bs

param2=-ac

param3=-nolisten

param4=tcp

[Xvnc]

param1=-bs

param2=-ac

param3=-nolisten

param4=tcp

param5=-localhost

param6=-dpi

param7=96

可以修改会话设置  :将最大会话限制该大  MaxSessions=50

将KillDisconnected=1;则每次断开连接时,linux都会关闭会话进程。

然后重启/etc/init.d/xrdp restart    就可解决问题

———————————————— 

原文链接:https://blog.csdn.net/qq_22370409/article/details/88914093

你可能感兴趣的:(Windows 远程桌面连接Ubuntu操作以及各种问题解决)