Tailscale + xrdp 实现 Ubuntu 无公网远程控制方案
摘要
本文介绍了一种无需公网 IP 和端口转发的 Ubuntu 远程桌面方案。在 Ubuntu 端,需安装 Tailscale 并登录,安装 xrdp(推荐轻量级 Xfce),配置会话并放行 3389 端口。在 Windows 端,安装 Tailscale 并使用远程桌面连接到 Ubuntu 的 Tailscale IP。文中还提供了连接失败、黑屏等常见问题的解决方法。
前言
之前写 Ubuntu 远程控制方案时提到过内网穿透,当时用的端口转发,但很多朋友没有公网 IP。传统方案 frp、Ngrok 要么需要中转服务器,要么有流量限制。
Tailscale + xrdp,这是体验最像原生 Windows 远程桌面的方案,全程不用公网 IP、不用开路由器端口,免费版 Tailscale 个人套餐支持 100 台设备,完全够用
一、Ubuntu 端配置(被控机)
1. 安装并登录 Tailscale

运行后终端会打印一个 登录链接,复制到浏览器打开,用 Google / GitHub / Microsoft 账号登录。

登录成功后 Ubuntu 会获得一个 100.x.x.x 的虚拟 IP。
2. 安装 xrdp
Ubuntu 桌面版,可直接用;但 GNOME 经 xrdp 容易黑屏/卡顿,推荐装轻量的 Xfce 更顺:
3. 让 xrdp 使用 Xfce
4. 放行端口(若开了 UFW 防火墙)
5. 记下你的 Tailscale IP

二、Windows 端设置(你的电脑)
去 https://tailscale.com/download 装 Windows 版,登录同一个账号(和 Ubuntu 那步一致,这样两台机器才能互相看到)

打开「远程桌面连接」(
mstsc)计算机填 Ubuntu 的 Tailscale IP(如
100.102.53.68)
用户名 / 密码填 Ubuntu 的登录账密
连接 → 看到 Xfce 桌面即成功 🎉

三、常见坑
连不上:先确认 Windows 端 Tailscale 已登录且状态绿色;
ping <Ubuntu的Tailscale IP>能通黑屏/认证循环:多半是 GNOME 会话问题,按第 3 步切到 Xfce 即可
提示密码错误:用
sudo passwd $USER重设 Ubuntu 密码