在 ubuntu 22.04 上配置界面服务器 xrdp

图形界面解决方案

1. VNC
2. XRDP
3. X11 + ssh : // https://blog.csdn.net/u011011827/article/details/131065690

VNC

外部开放端口 用的 是 5901-5910
桌面用的是 cat .vnc/xstartup 中写的桌面

XRDP

xrdp相关进程 A 外部开放端口是 3389
xrdp相关进程 B 内部开放端口是 3350

tcp6       0      0 :::3389                 :::*                    LISTEN      3663305/xrdp        
tcp6       0      0 ::1:3350                :::*                    LISTEN      3663295/xrdp-sesman

           |-xrdp(3663305)---xrdp(3666729)
           		// 3666729 是新建立的会话,如果不停销毁会话,该PID会一直变化
           		//会话建立之后,使用 3664951 PID 对应的 图形界面,该PID不会随着会话的销毁而销毁
           		//每个用户 同一时刻 只能有一个会话.该会话对应 "3664951 PID 对应的 图形界面"
           		//新建立的会话会将之前的会话销毁
           |-xrdp-sesman(3663295)---xrdp-sesman(3664951)-+-Xorg(3664953)-+-{Xorg}(3664956)
           |                                             |               `-{Xorg}(3664961)
           |                                             |-gnome-session-b(3664952)-+-ssh-agent(3665023)
           |                                             |                          |-{gnome-session-b}(3665043)
           |                                             |                          |-{gnome-session-b}(3665045)
           |                                             |                          `-{gnome-session-b}(3665123)
           |                                             `-xrdp-chansrv(3664962)---{xrdp-chansrv}(3664963)

桌面用的 是 .xsession 中写的桌面

配置文件还包括
	/etc/xrdp/xrdp.ini 	  // xrdp配置,不需要改
	/etc/xrdp/sesman.ini  //会话配置,,不需要改
	/etc/xrdp/startwm.sh  //xrdp配置 中提到的脚本,,不需要改

XRDP 实例

安装和配置

  • 安装 vnc 服务器 和 xrdp 服务器
sudo apt-get install xrdp
sudo service xrdp status // check 状态
  • 配置 ~/.xsession
// ubuntu 默认桌面环境为 gnome
在图形界面下新建一个shell,键入 echo $XDG_CURRENT_DESKTOP
它会显示 GNOME
则我们需要在~/.xsession 中填入 gnome-session	
该配置过后不用重启服务器

使用

在 windows 下 win + R ,打开运行窗口, 输入 mstsc
输入计算机IP 和 用户名,确认后.会提示输入密码.输入密码即可!

XRDP 使用原理

xrdp 是一种远程桌面协议,它允许用户通过网络连接到远程计算机并使用该计算机的桌面环境。以下是 xrdp 会话建立的过程:

客户端通过 RDP 协议连接到 xrdp 服务器的 3389 端口。
xrdp 服务器接收到连接请求并验证客户端的身份。
xrdp 服务器启动一个新的 X11 会话(或连接到现有的 X11 会话)。
xrdp 服务器为客户端创建一个虚拟 X11 显示器,并将客户端连接到该显示器。
xrdp 服务器启动一个桌面环境(例如 GNOME、XFCE 或 KDE)。
客户端通过 RDP 协议接收 xrdp 服务器发送的屏幕图像和输入事件,并将它们显示在本地计算机上。


在 xrdp 的配置文件中,您可以指定要使用的桌面环境、要监听的端口以及其他选项。
默认情况下,xrdp 使用的是 Xvnc 作为其默认的 X11 服务器,但也可以使用其他 X11 服务器,例如 Xorg。

与 VNC 类似,xrdp 也是一种远程桌面协议。
但是,它们之间有一些区别。
VNC 使用自己的协议来传输屏幕图像和输入事件,而 xrdp 使用 RDP 协议。
此外,xrdp 可以在 Windows 上使用自带的远程桌面客户端进行连接,而 VNC 需要使用第三方 VNC 客户端。

谁更快 : X11转发 > XRDP > VNC

但是我目前无法在 X11转发 下 获取一个完成的图形桌面!
$ sudo gnome-session

** (process:3667498): WARNING **: 23:35:38.592: Could not make bus activated clients aware of XDG_CURRENT_DESKTOP=GNOME environment variable: Failed to execute child process ?dbus-launch? (No such file or directory)
Terminated
在理论上,X11 转发、VNC 和 xrdp 都可以用作远程桌面服务器,但它们之间有些许不同:

X11 转发:X11 转发是将本地 X11 服务器上的应用程序窗口和 GUI 元素转发到远程计算机上的 X11 服务器上。这意味着您可以在本地计算机上运行应用程序,并在远程计算机上查看应用程序的 GUI。X11 转发使用 SSH 协议进行加密和身份验证,因此非常安全。但是,X11 转发的性能可能会受到网络延迟和带宽限制的影响。

VNC:VNC 是一种基于远程帧缓冲协议的远程桌面服务器。当您通过 VNC 协议连接到 VNC 服务器时,服务器会将屏幕图像和输入事件发送到客户端。VNC 服务器通常使用 5900 端口进行通信。VNC 可以在低带宽网络下工作,但由于其使用的是远程帧缓冲协议,因此其性能可能不如 X11 转发。

xrdp:xrdp 是一种基于 RDP 协议的远程桌面服务器。当您通过 RDP 协议连接到 xrdp 服务器时,xrdp 会在服务器上启动一个新的 X11 会话,并为您创建一个虚拟 X11 显示器。然后,xrdp 会将客户端连接到该显示器,并启动一个桌面环境(例如 GNOME、XFCE 或 KDE)。xrdp 使用 3389 端口进行通信,并且可以使用 SSL/TLS 进行加密和身份验证。

综上所述,从理论上讲,X11 转发是最安全、最快速的选项,但它需要在本地计算机上安装 X11 服务器。
VNC 是一种可靠的跨平台解决方案,但它的性能可能不如 X11 转发。
xrdp 则是一种基于 RDP 协议的远程桌面服务器,它可以提供与 Windows 远程桌面类似的体验,并且可以在大多数操作系统上使用。
从理论上来说,X11 转发比 xrdp 更快。这是因为 X11 转发只是将本地 X11 服务器上的应用程序窗口和 GUI 元素转发到远程计算机上的 X11 服务器上,而不需要在远程计算机上启动新的桌面环境。这意味着,X11 转发可以利用本地计算机的 CPU 和 GPU 资源,从而提供更快的性能。

相比之下,xrdp 需要在远程计算机上启动新的桌面环境,并将屏幕图像和输入事件发送到客户端。这可能会导致更高的网络延迟和带宽占用,从而影响性能。

但是,实际性能取决于许多因素,例如网络速度、带宽、计算机硬件和软件配置等。因此,对于特定的使用情况,X11 转发和 xrdp 的性能可能会有所不同。
---

从理论上来说,xrdp 比 VNC 更快。这是因为 xrdp 是基于 RDP 协议的远程桌面服务器,使用 3389 端口进行通信。RDP 协议是专门为远程桌面设计的,具有较低的延迟和带宽占用。相比之下,VNC 使用基于帧缓冲区的远程桌面协议,可能会导致更高的延迟和带宽占用。

然而,实际性能取决于许多因素,例如网络速度、带宽、计算机硬件和软件配置等。在某些情况下,VNC 可能比 xrdp 更快,特别是在低带宽网络环境下。因此,最好根据具体情况选择适合自己的远程桌面服务器。
除了 X11 转发和 xrdp,还有一些其他的图形界面服务器,例如:

NX:NX 是一种基于 X11 转发的远程桌面服务器。它使用压缩和缓存技术来提高性能,并支持多用户会话和断点续传等功能。在某些情况下,NX 的性能可能比 X11 转发更快。

Spice:Spice 是一种新型的远程桌面协议,它支持高质量的视频、音频和 USB 重定向等功能。Spice 可以与 KVM 虚拟化技术一起使用,以提供高性能和低延迟的远程桌面体验。

RFB:RFB(Remote Framebuffer)是 VNC 协议的一种变体。它使用 JPEG 或 PNG 压缩算法来减少带宽占用,并支持加密和身份验证等功能。RFB 的性能可能比标准 VNC 更快。
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Ubuntu 22.04上设置远程桌面使用xrdp,您可以按照以下步骤操作: 1. 首先,确保您的系统已经安装了xrdp。您可以使用以下命令来安装xrdp: ``` sudo apt update sudo apt install xrdp ``` 2. 安装完成后,xrdp服务会自动启动。您可以使用以下命令来检查xrdp服务的状态: ``` systemctl status xrdp ``` 3. 如果xrdp服务正在运行,您可以尝试使用远程桌面连接工具连接到您的Ubuntu 22.04系统。在连接工具中,输入您的Ubuntu系统的IP地址或主机名,并使用您的系统凭据进行身份验证。 4. 如果您无法连接到系统或遇到其他问题,可能需要配置防火墙以允许远程桌面连接。在Ubuntu 22.04上,默认的防火墙是ufw。您可以使用以下命令允许xrdp端口(默认为3389): ``` sudo ufw allow 3389 ``` 5. 如果您使用的是Ubuntu桌面环境(如GNOME),可能还需要安装并启用VNC服务器,以便xrdp可以连接到桌面会话。您可以使用以下命令来安装VNC服务器: ``` sudo apt install vnc4server ``` 6. 安装完成后,您可以配置VNC服务器并启用它。运行以下命令来配置VNC服务器: ``` vncserver ``` 在配置过程中,您需要设置VNC服务器的访问密码。 7. 配置完成后,您可以使用远程桌面连接工具连接到xrdp服务并输入VNC服务器的访问密码。 希望以上步骤能帮助您在Ubuntu 22.04上设置远程桌面使用xrdp。如果您遇到任何问题,请随时向我提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值