Ubuntu 22.04 开机后使用 Windows MSTSC 远程登录的设置记录

最近在折腾 Ubuntu 22.04 的远程桌面功能,希望达到这样一个效果:

  • Ubuntu 开机后自动进入桌面

  • 不需要本地再手动登录一次

  • Windows 下直接用 MSTSC 就能远程连接

实际配置下来,关键不只是打开远程桌面,还要处理 自动登录后 keyring 没有解锁 的问题。下面把完整设置过程整理一下。


一、Ubuntu 打开远程桌面相关选项

先进入:

Settings → Sharing

打开以下选项:

  • Remote Desktop / 远程桌面

  • Desktop Sharing / 远程共享

  • Remote Control / 远程控制

  • Remote Login / 远程登录

其中比较关键的是:

  • Remote Control:允许远程端控制本机桌面

  • Remote Login:允许通过 RDP 登录

  • Authentication:设置远程连接使用的用户名和密码

这里建议把远程桌面的用户名和密码都设置好,后面 Windows 的 MSTSC 连接时要用到。


二、开启系统自动登录

为了让机器重启后直接进入桌面,还需要打开自动登录。

进入:

Settings → Users

然后:

  1. 解锁当前页面

  2. 选中当前用户

  3. 打开 Automatic Login / 自动登录

这样 Ubuntu 重启后会自动进入当前用户桌面,而不需要在本机手动输入密码。


三、用 Seahorse 将 Login keyring 改为空密码

这是最关键的一步。

问题现象

一开始虽然已经:

  • 打开了远程桌面

  • 打开了自动登录

  • 设置了远程桌面用户名和密码

但系统重启后,Windows MSTSC 依然连不上。

排查后发现:

  • Ubuntu 自动登录进入桌面后,grdctl status 里显示
    Username: (empty)
    Password: (empty)

  • 只有在本机 手动锁屏,再输入系统密码登录一次 之后,
    grdctl status 才会变成
    Username: (hidden)
    Password: (hidden)

这说明问题不在 RDP 服务本身,而在于:

自动登录虽然进入了桌面,但没有自动解锁 GNOME Keyring。
远程桌面的用户名和密码保存在 keyring 中,keyring 没解锁,RDP 就读不到凭据。

安装 Seahorse

先安装:

sudo apt update
sudo apt install seahorse

安装完成后,打开:

Passwords and Keys / 密码和密钥

修改 Login keyring 为空密码

操作步骤如下:

  1. 在左侧找到 Passwords

  2. 找到其中的 Login

  3. 右键 Login

  4. 选择 Change Password

  5. 输入当前旧密码

  6. 新密码留空

  7. 确认新密码也留空

  8. 确认警告提示

这样设置后,Login keyring 不再需要额外输入密码解锁。

为什么这一步很重要

因为 Ubuntu 自动登录后,如果 keyring 仍然是加密状态,那么远程桌面保存的凭据就无法读取。
改成空密码后,系统自动进入桌面时,远程桌面服务就可以直接读取到这组凭据,从而支持开机后直接远程连接。


四、重新设置远程桌面凭据

为了确保远程桌面的用户名和密码已经正确写入,建议执行一次:

grdctl rdp set-credentials [user] [your_rdp_password]
systemctl --user restart gnome-remote-desktop.service

然后查看状态:

grdctl status

如果配置正常,应该看到类似:

RDP:
    Status: enabled
    Username: (hidden)
    Password: (hidden)

如果这里仍然显示 (empty),说明远程桌面凭据还没有正确写入或读取。


五、Windows 下使用 MSTSC 连接

Ubuntu 端设置完成后,就可以在 Windows 上直接使用 MSTSC 连接了。

打开远程桌面客户端

Win + R,输入:

mstsc

然后输入 Ubuntu 主机的 IP 地址。

登录信息

输入你在 Ubuntu 远程桌面设置中配置的:

  • 用户名

  • 密码

连接成功后,就可以直接看到 Ubuntu 桌面。


六、验证是否实现“开机即能连”

最终验证方法很简单:

  1. 重启 Ubuntu

  2. 等待系统自动登录进入桌面

  3. 不要在本机手动锁屏或再次输入密码

  4. 直接在 Windows 使用 MSTSC 连接

如果这时可以直接连上,说明配置成功。

也可以在 Ubuntu 本机执行:

grdctl status

确认是否为:

Username: (hidden)
Password: (hidden)

如果重启后又变成 (empty),那说明 keyring 仍然没有正确自动可用。


七、几点说明

1. 远程桌面密码不是系统登录密码

Ubuntu 远程桌面的 RDP 密码,和 Linux 用户本地登录密码不是一回事。
MSTSC 用的是远程桌面设置里的那组凭据,不一定等于系统密码。

2. 自动登录不等于 keyring 自动解锁

这是这次踩坑的核心。
系统虽然自动进入桌面了,但 keyring 不一定能直接用,所以远程桌面会表现为“服务启动了,但无法认证”。

3. 将 keyring 设为空密码会降低本机 secret 的保护强度

这样做的代价是,本机保存的密码和其他 secret 不再受 keyring 密码保护。
如果是家用机器、实验机或内网设备,一般可以接受;如果是高安全环境,需要谨慎考虑。


八、总结

要让 Windows MSTSC 在 Ubuntu 22.04 开机后直接远程连接,完整步骤如下:

  1. 在 Ubuntu 设置中打开:

    • 远程共享

    • 远程控制

    • 远程登录

  2. Users 中打开自动登录

  3. SeahorseLogin keyring 改为空密码

  4. 确保远程桌面的用户名和密码已经正确保存

  5. 在 Windows 使用 MSTSC 连接 Ubuntu

这套配置的关键点不只是“打开远程桌面”,而是要解决 自动登录后 keyring 不解锁 的问题。只有这样,才能真正做到 Ubuntu 重启后,Windows 直接 MSTSC 连接成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值