必须安装轻量桌面(如xfce4)并正确配置才能使用xrdp,否则仅灰屏或断连;ubuntu 24.04需执行sudo apt install xfce4 xfce4-session、echo xfce4-session > ~/.xsession、sudo adduser xrdp ssl-cert、安装中文字体及设置zh_cn.utf-8 locale。

xrdp 能直接用,但不装桌面环境就只能看到灰屏或连接断开——必须先装一个轻量桌面(比如 xfce4),再配 xrdp,否则连登录界面都进不去。
Ubuntu 24.04 必须装 xfce4 并指定会话
Ubuntu 默认的 gnome 桌面和 xrdp 兼容性差,容易卡在黑屏、灰屏或认证后立即断开。官方推荐用 xfce4,它启动快、资源占用低、xrdp 原生支持好。
- 装桌面:运行
sudo apt install xfce4 xfce4-session - 告诉
xrdp用哪个会话:执行echo xfce4-session > ~/.xsession(注意是当前用户的家目录,不是 root) - 如果已存在
~/.xsession,先删掉再写,避免多行冲突 - 别改
/etc/xrdp/startwm.sh—— Ubuntu 24.04 下它会被忽略,只认用户级.xsession
xrdp 启动失败或连不上 3389 端口
常见现象是 Windows 的 mstsc 报“由于发生内部错误,远程会话将被终止”或直接超时。大概率是服务没起来、端口被拦、或证书权限不对。
Linux 性能分析与调优专家,覆盖 CPU、内存、磁盘 I/O、网络、内核参数、编译优化、容器/K8s。适用场景:系统卡顿/高负载、内存不足/OOM/Swap 高、CPU 异常/iowait 高。
- 检查服务状态:
sudo systemctl status xrdp,看是否 active (running),若 failed,重点看日志:sudo journalctl -u xrdp -n 50 --no-pager - Ubuntu 24.04 必须加证书组权限:
sudo adduser xrdp ssl-cert,漏这步会报 SSL_accept 错误 - 确认监听端口:
sudo ss -tlnp | grep :3389,没输出说明没监听;若监听了但连不上,检查防火墙:sudo ufw status,允许端口:sudo ufw allow 3389 - 云服务器(如 Azure/AWS)还要在控制台安全组里放行
3389/tcp,光开本地防火墙没用
连接后中文乱码或字体发虚
不是 xrdp 本身的问题,而是桌面环境没加载中文字体或 locale 设置不匹配。
- 先装中文字体:
sudo apt install fonts-wqy-zenhei fonts-droid-fallback - 确认当前用户 locale 是中文:
locale输出里LANG应为zh_CN.UTF-8;如果不是,运行sudo locale-gen zh_CN.UTF-8,然后echo "export LANG=zh_CN.UTF-8" >> ~/.profile - 重启
xrdp:sudo systemctl restart xrdp,并彻底断开 RDP 连接(不要仅注销),重连生效 - xfce4 面板右键 → “Panel” → “Add New Items” → 加 “Notification Area”,能解决托盘图标缺失问题
真正麻烦的从来不是装 xrdp 这一行命令,而是桌面会话路径、证书组权限、locale 和字体这四点没对齐——任一缺失都会导致“能连上但看不到桌面”或“输完密码就断”。建议按顺序逐项验证,别跳步。










