Windows远程连接Ubuntu24无显示器服务器桌面
作者QQ:2774118934 交流群:1028181089
零、前提条件
- Ubuntu系统安装的是桌面版。也就是有桌面环境,哪怕没接显示器
- 用户拥有sudo权限
- 了解
vim/nano/vi等任意文件编辑工具的基本用法!。(如果不会的话,就去搜一下vim怎么用。并且sudo apt install vim - 在写这篇随笔时,采用的系统版本是Ubuntu24.04.1TLS
- 个人在配置的时候,频繁与AI对话排错。参考资料来自ChatGPT和CSDN的一篇文章为我印证了该方法的可行性。因此,该篇文章由AI总结,人工校对。
一、采用的技术方案
本次连接采用:
Windows Remote Desktop (RDP) + xrdp + xorgxrdp + GNOME Desktop
技术链路:
Windows mstsc
|
| RDP协议
|
↓
Ubuntu xrdp服务
|
| 会话管理
|
↓
xrdp-sesman
|
| 创建远程X11会话
|
↓
xorgxrdp
|
| 提供Xorg显示服务器
|
↓
GNOME Session
|
↓
Ubuntu 24.04桌面环境
二、为什么选择 xrdp
Ubuntu 图形远程主要有两种方案:
| 方案 | 特点 | 适合场景 |
|---|---|---|
| GNOME Remote Desktop | 共享当前桌面,需要GNOME session | 个人电脑远程控制 |
| xrdp | 创建独立远程桌面Session | 服务器远程管理 |
因此选择:
xrdp
三、需要安装的软件包
1. xrdp
作用:
提供RDP服务器。
Windows自带:
mstsc.exe
通过RDP协议连接它。
安装:
sudo apt install xrdp -y
-y的作用是,同意一切选项。加上之后就不会总是给你弹确认了
2. xorgxrdp
作用:提供
RDP → Xorg
转换支持。
没有它:
- Xorg Session无法创建
- 可能只能使用Xvnc
- 性能差
安装:
sudo apt install xorgxrdp -y
3. dbus-x11
作用:
GNOME依赖D-Bus进行:
- 用户Session管理
- 桌面服务通信
xrdp启动的是远程session,不经过GDM,因此需要补充。
安装:
sudo apt install dbus-x11 -y
4. gnome-session
作用:
启动GNOME桌面。
检查:
ls /usr/bin/gnome-session
如果正常,则会输出
/usr/bin/gnome-session
安装:
sudo apt install gnome-session -y
5. ubuntu-session
作用:
提供Ubuntu GNOME默认session配置。
安装:
sudo apt install ubuntu-session -y
四、完整安装命令
可以直接执行:
# 更新软件源
sudo apt update
# 安装xrdp,提供Windows RDP连接服务
sudo apt install xrdp -y
# 安装xorgxrdp,让xrdp使用Xorg图形后端
sudo apt install xorgxrdp -y
# 安装D-Bus X11支持,解决GNOME远程Session启动问题
sudo apt install dbus-x11 -y
# 安装GNOME Session
sudo apt install gnome-session -y
# 安装Ubuntu默认桌面Session
sudo apt install ubuntu-session -y
五、xrdp服务配置
1. 加入证书权限
xrdp需要读取TLS证书:
sudo adduser xrdp ssl-cert
重启:
sudo systemctl restart xrdp
2. 设置开机启动
sudo systemctl enable xrdp
检查:
systemctl status xrdp
正常:(直接看上边那个点是不是绿的就行)
Active: active (running)
六、解决Ubuntu 24.04 GNOME启动问题
修改xrdp启动脚本
文件:
sudo vim /etc/xrdp/startwm.sh
加入:
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
export GNOME_SHELL_SESSION_MODE=ubuntu
export XDG_CURRENT_DESKTOP=ubuntu:GNOME
export XDG_SESSION_DESKTOP=ubuntu
作用:
告诉GNOME:
当前是:
Ubuntu GNOME Xorg Remote Session
不是:
SSH tty
七、配置用户Session
创建:
vim ~/.xsession
内容:
#!/bin/bash
export GNOME_SHELL_SESSION_MODE=ubuntu
export XDG_CURRENT_DESKTOP=ubuntu:GNOME
gnome-session --session=ubuntu
赋予权限:
chmod +x ~/.xsession
作用:
指定xrdp登录后启动Ubuntu桌面。
八、关闭Wayland
Ubuntu 24.04默认:
Wayland
但是xrdp主要使用:
Xorg
修改:
sudo vim /etc/gdm3/custom.conf
取消:
#WaylandEnable=false
改为:
WaylandEnable=false
重启服务即可,一般无需重启机器:
sudo systemctl restart gdm3
九、防火墙配置
xrdp默认端口:
3389/tcp
开放:
sudo ufw allow 3389/tcp
检查:
sudo ufw status
十、Windows连接参数
Windows:
Win + R然后输入mstsc打开远程桌面连接

输入:
Ubuntu_IP:3389
例如:
10.10.22.79:3389

这个点击OK,忽略就行
登录:
Session:
Xorg
username:
Ubuntu用户名
password:
Ubuntu用户密码

连接成功


如果闪退了?本篇随笔翻到最底下,去服务器上看日志!
十一、维护命令
# 查看远程桌面状态
systemctl status xrdp
# 重启远程桌面服务
sudo systemctl restart xrdp-sesman
# 查看当前登录会话
loginctl list-sessions
# 终止指定桌面会话
loginctl terminate-session <ID>
十二、验证命令
查看xrdp状态
systemctl status xrdp
查看端口
ss -tlnp | grep 3389
应该:
LISTEN *:3389
查看登录日志 (如果遇到连接失败的情况一定要看日志)
sudo tail -50 /var/log/xrdp-sesman.log
成功关键:
access granted
Session started successfully
最终架构笔记一句话总结
Ubuntu 24.04服务器通过 xrdp 提供RDP服务,xorgxrdp负责创建Xorg远程显示会话,GNOME Session提供桌面环境,Windows mstsc通过RDP协议连接,实现无显示器Ubuntu图形桌面远程访问。
这套方案的优点是:不依赖显示器、不依赖本地登录、SSH可维护、Windows原生支持。 对服务器用途来说,比“远程共享桌面”更加符合实际。
常见问题
连接失败?看日志!然后把日志丢给AI帮你分析原因
sudo tail -50 /var/log/xrdp-sesman.log
远程桌面卡死了?
不重启整个系统,只重启远程桌面服务
sudo systemctl restart xrdp-sesman

浙公网安备 33010602011771号