当前位置: 首页>>技术问答>>正文


如何设置重用现有会话的xrdp会话?

, , ,

问题描述

我一直在尝试使用xrdp精确地设置RDP终端服务器,并且在获取工作配置方面遇到了很大的麻烦。当用户登录时,我需要它连接到该用户现有会话(如果存在),否则启动新会话,并且任何已启动的会话必须启动LXDE。我需要对默认配置进行哪些更改才能使其正常工作?

最佳解决思路

我有同样的问题,我刚刚找到了一个简单的解决方案。我最初刚刚使用标准版本安装了xrdp:

apt-get install xrdp

之后,它的所有关于你的xrdp.ini文件,位于这里:

/etc/xrdp/xrdp.ini

要打开和编辑xrdp的配置文件,请使用:

sudo nano /etc/xrdp/xrdp.ini

默认情况下,第一个xrdp会话处理脚本如下所示:

[xrdp1]
name=sesman-vnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=-1

重要的一行是port=-1,这使得xrdp总是寻找一个可以连接的空闲端口。如果在此处设置固定端口,则xrdp将始终返回并连接到同一会话。我换了我的,所以它看起来像这样:

[xrdp1]
name=customsessionname
lib=libvnc.so
username=myusername
password=ask
ip=127.0.0.1
port=5912

多数民众赞成,我认为只需将port=-1更改为port=5912即可。我的xrdp总是re-connects到现有的会话总是使用相同的端口。

次佳解决思路

我想改进现有的答案。最高投票的答案是编辑xrdp.ini文件以将端口更改为固定值来代替-1通配符以查找开放端口。

我尝试过,但第一次连接错误,所以最终切换回-1值。虽然问题仍然没有恢复,但很快就陷入了挫折之中,所以我再次查看了ini文件。

什么对我有用,而且我真正感到好奇的是:

编辑/etc/xrdp/xrdp.ini

[xrdp1]下,port=-1我发现用户名和密码都设置为ASK。如果您设置了port=ask,您将在登录提示时使用用户名和密码选择一个端口。

我没有安装其他软件包,而是找到了最简单的修复方法来设置ask选项,在登录时使用用户名和密码连接第一个会话(如果我还没有运行)会在端口-1上。断开会话后,要恢复现有会话,请始终登录默认端口:5910,您将恢复现有会话,直到重新启动远程计算机或在注销时结束会话。

总结一下:

  • 编辑xrdp.ini文件

  • 设置port = ask

  • 从远程计算机连接,如果没有现有会话,则在登录时指定端口-1

  • 要恢复会话,请输入默认值5910

第三种解决思路

我不想成为那个刚刚删除链接的人,但我按照指南here进行了操作,效果非常好。我现在可以从Linux和Windows主机登录到RDP会话,如果我以前登录过,请将我重新连接到旧会话。这是我发现的安装的最佳指南。不幸的是,标准软件包安装比从源代码安装引起的问题要多得多。

该链接的作者还制作了一个automatic tool来安装和配置它,但我还没有尝试过,所以要小心。

希望能帮到你。

第四种思路

问题是xrdp并不总是连接到同一个端口。如果它没有,你忘记了端口号,你可以登录一个ssh会话,找出号码

netstat -tulpn | grep vnc

你会得到类似下面的东西

tcp        0      0 127.0.0.1:5911          0.0.0.0:*               LISTEN      5365/Xvnc

然后你知道5911是你连接的端口。

第五种思路

当您第一次连接到远程桌面时,在xrdp框的登录屏幕上应该有一个下拉框,从这里选择”vnc-any”然后输入计算机的IP地址和密码,但保留端口的位置,这个应该帮助:)

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1739.html,未经允许,请勿转载。