Ubuntu 安装 XRDP,替代系统自带RDP远程桌面

起因,Ubuntu的自带RDP远程桌面很好用,但很傻卵,必须登录。

而设置了自动登录也不能解开KEYRING,必须必须必须用GUI手动登录。

(我远程我用头给你坐机子面前开显示器先登录??)

比起VNC的话XRDP不需要专用客户端,而且完美兼容windows和一帮用RDP协议的远程软件,开搞!

1.安装桌面(二选一,已安装可跳过)

如果使用GNOME桌面(Ubuntu默认已安装)

bash 复制代码
sudo ​​apt install gnome
sudo apt install gnome-session gdm3

如果使用xfce桌面

bash 复制代码
sudo apt-get update
sudo DEBIAN_FRONTEND=noninteractive apt-get -y install xfce4
sudo apt install xfce4-session

2.安装xrdp

bash 复制代码
sudo apt-get -y install xrdp
sudo systemctl enable xrdp

3.向 xrdp 用户授予证书访问权限

bash 复制代码
sudo adduser xrdp ssl-cert

4.配置桌面环境

依据自己使用的桌面选。

注意路径 ~/ 此步写入家目录中.xsession文件,请正确切换命令行使用的用户

<例如你要远程登录ABC这个用户,这个文件得写到ABC用户的home目录底下。别因为终端命令行中的当前用户是root,而写到了root家目录中>

(听不懂的去自己家目录创建个.xsession文件然后在里面写xfce4-session或者gnome-session就完事了)

bash 复制代码
如果使用xfce4桌面
echo xfce4-session >~/.xsession
bash 复制代码
如果使用gnome桌面
echo gnome-session >~/.xsession

4.1又到了喜闻乐见的权限时间!

和上面一样,需要远程的用户是ABC,那就把刚刚在ABC家目录中创建的.xsession属组和属组都改成ABC。

注意点同上,别稀里糊涂的写到root家目录或是用root用户创建文件就行。所以如果上面步骤做的都很正确,这步可以省略。

bash 复制代码
chown <登录用户>:<登录用户的组> ~/.xsession

5.重载配置

bash 复制代码
systemctl restart xrdp

6.完成设置,使用远程桌面应用登录(随便个能用3389端口的都行)

Ubuntu自带的RDP是要设定单独用户名和密码的,和smb,ftp服务类似。

而XRDP使用linux系统用户直接登录(可以理解为直接登录linux系统)

7.问题解决

登录成功立马断开?检测日志没有错误?

bash 复制代码
查看xrdp日志
与.xsession同一目录(家文件夹下)

cat .xsession-errors

我完全没有显示任何错误,最下面一行是 已终结

原因

不像windows的远程桌面可以互相顶,linux上同一个用户不能同时登录两个图形界面,如果你已经登录了,去把登录的注销,再去使用xrdp远程登录。

这条命令可以看登录的用户

bash 复制代码
w
相关推荐
舒克起飞了5 分钟前
linux系统编程——Makefile、GDB调试
linux·运维·服务器
背影疾风14 分钟前
C++之路:类基础、构造析构、拷贝构造函数
linux·开发语言·c++
deming_su22 分钟前
轻松上手:使用Nginx实现高效负载均衡
运维·nginx·负载均衡
m0_694845571 小时前
服务器如何配置防火墙规则开放/关闭端口?
linux·服务器·安全·云计算
降世神童2 小时前
华为云Flexus+DeepSeek征文| 使用华为云CCE容器部署Dify-LLM高可用方案的验证与测试
运维·华为云·aigc
降世神童2 小时前
华为云Flexus+DeepSeek征文| 基于华为云Dify-LLM高可用平台开发运维故障处理智能体
运维·华为云·aigc
阿巴~阿巴~2 小时前
Linux基本命令篇 —— alias命令
linux·服务器·bash
好名字更能让你们记住我3 小时前
Linux多线程(十二)之【生产者消费者模型】
linux·运维·服务器·jvm·windows·centos
门思科技3 小时前
设计可靠 LoRaWAN 设备时需要考虑的关键能力
运维·服务器·网络·嵌入式硬件·物联网
矩阵老炮3 小时前
Ubuntu20.4编译AOSP源码实践
ubuntu·aosp