Ubuntu 22.04 手动安装 XRDP(RDP 远程桌面)教程

Ubuntu 22.04 手动安装 XRDP(RDP 远程桌面)教程

说明:本文介绍在 Ubuntu 22.04 上手动安装并启用 XRDP ,让 Windows 使用"远程桌面连接(mstsc)"通过 RDP 协议访问 Linux 桌面。

相比 VNC,XRDP 更适合服务器/运维场景:

  • 不依赖共享本机现有桌面
  • 一般不受锁屏/屏幕空白影响
  • 可在无头/注销状态下创建独立桌面会话

1. 什么是 XRDP?

XRDP 是一个免费的开源程序,是 Microsoft RDP(Remote Desktop Protocol,远程桌面协议)的实现。安装 XRDP 后,你可以从 Windows 通过"远程桌面连接"登录到 Ubuntu,并创建一个真实的图形桌面会话(类似本地登录)。


2. 环境与前提

  • Ubuntu 版本:Ubuntu 22.04
  • 需要 sudo 权限
  • 网络可达(Windows 能访问 Ubuntu 的 3389/TCP)

3. 安装步骤

3.1 更新软件索引(重建 APT 缓存)

bash 复制代码
sudo apt update

3.2 安装 XRDP

Ubuntu 默认仓库就提供 XRDP,无需添加第三方源:

bash 复制代码
sudo apt install -y xrdp

4. 启动并设置开机自启

4.1 启动服务

bash 复制代码
sudo systemctl start xrdp

4.2 设置开机自启

bash 复制代码
sudo systemctl enable xrdp

4.3 查看运行状态

bash 复制代码
systemctl status xrdp

5. 放行防火墙端口(如启用了 UFW)

XRDP 默认监听端口:3389/TCP

放行端口:

bash 复制代码
sudo ufw allow 3389/tcp

查看防火墙状态:

bash 复制代码
sudo ufw status

6. Windows 端连接方法

  1. 在 Windows 按 Win + R
  2. 输入 mstsc 回车,打开"远程桌面连接"
  3. 在"计算机"里输入 Ubuntu 的 IP 地址或主机名
  4. 连接后输入 Ubuntu 的用户名与密码

7. 常见排查

7.1 Windows 连接失败(无法连接/超时)

在 Ubuntu 端确认 XRDP 是否监听:

bash 复制代码
ss -lntp | grep 3389 | cat

确认服务状态:

bash 复制代码
systemctl status xrdp | cat

确认防火墙:

bash 复制代码
sudo ufw status | cat

7.2 连接后黑屏/闪退

此类问题通常与桌面环境、会话配置或权限有关。建议先确认系统安装了桌面环境,并查看 XRDP 日志:

bash 复制代码
sudo journalctl -u xrdp -n 200 --no-pager | cat
sudo journalctl -u xrdp-sesman -n 200 --no-pager | cat

8. 最短命令总结

bash 复制代码
sudo apt update
sudo apt install -y xrdp
sudo systemctl start xrdp
sudo systemctl enable xrdp
systemctl status xrdp
sudo ufw allow 3389/tcp
相关推荐
SkyWalking中文站5 小时前
SkyWalking 11 与 BanyanDB 0.11:在存储引擎内部实现 Trace 尾部采样
运维·监控·自动化运维
姚不倒5 小时前
etcd 学习系列(二):集群架构 —— 3 节点是如何工作的
运维·架构·etcd
pt10436 小时前
网络自动化Python课程:Cisco PyATS网络自动化测试框架
运维·自动化
Johny_Zhao7 小时前
网络安全等级保护测评实施方案
linux·网络·人工智能·网络安全·信息安全·云计算·等保测评·系统运维·itsm
小袁拒绝摆烂7 小时前
Jenkins部署经验
运维·jenkins
落羽的落羽8 小时前
【AI】快速理解AI应用的相关名词概念
linux·c++·人工智能·python·计算机网络·算法
刚入门的大一新生8 小时前
Linux-进程控制
linux·运维·服务器·c++
上火的金鱼妹8 小时前
K8S基础组件作用和关系整理
linux·运维·服务器·kubernetes
Vcaker8 小时前
Linux学习25-harbor私有仓库部署
linux·运维·学习
刃神太酷啦8 小时前
Redis 进阶核心:持久化 (RDB/AOF)、事务与主从复制全解析----《Hello Redis!》(5)
linux·c语言·数据库·c++·redis·缓存·bootstrap