AstrBot 部署番外篇:打造最强远程管理方案 (Tailscale + Sunshine)

foxgem

在上一篇 《闲置台式机变身私有 AI Agent:基于 AstrBot + 企业微信的完整部署方案》 中,我们提到过远程管理是必不可少的一环。毕竟这是一台服务器,大多数时候它是没有显示器、键盘鼠标的”无头”(Headless)状态。

但仅仅能”连上”是不够的。作为一台拥有独立显卡的机器,我们希望远程连接时能获得原生本地般的流畅体验——无论是编码开发、查看高分辨率图像,还是偶尔摸鱼跑个游戏。

本篇将带你搭建一套基于 Tailscale(内网穿透)和 Sunshine Foundation(qiin2333 维护版高性能串流)的终极远程方案。

方案大比拼:谁是远程管理的王者?

我们将市面上的远程方案大致分为三类:

  1. 传统远程桌面/软件:ToDesk, TeamViewer, 向日葵, Windows RDP (MSTSC)
  2. 游戏级串流服务:Parsec, Steam Link, UU远程
  3. 开源自托管组合:Tailscale (组网) + Sunshine/Moonlight (串流)

1. 综合对比表

特性Tailscale + RDPUU远程Sunshine + Moonlight向日葵/ToDesk (免费版)
核心原理虚拟局域网 + 系统自带远程专有协议 + 中转服务器虚拟局域网 + 显卡硬件编码串流专有协议 + 中转服务器
使用难度中 (需基础网络知识)低 (一键安装)高 (配置项多,门槛高)低 (一键安装)
资源占用低 (系统原生)Middle (后台常驻)极低 (GPU 硬件编码)高 (CPU 软解/后台重)
画质/帧率一般 (办公够用)好 (针对游戏优化)极致 (4K 120Hz HDR)差 (往往限制清晰度/帧率)
延迟体验中等极低 (局域网 <5ms)高 (受限于中转节点)
公网访问无需公网 IP (P2P 打洞)无需公网 IP需配合虚拟组网 (如 Tailscale)无需公网 IP
费用免费 (个人版)基础免费 / 高清需会员完全免费开源免费版限速/限功能
依赖性依赖 Tailscale 官方协调依赖网易服务器完全自控 (除组网外)强依赖厂商服务器
隐私性高 (端到端加密)中 (闭源软件)最高 (开源可审计)低 (闭源,可能有弹窗)

2. 为什么选择 Sunshine + Moonlight?

对于我们的 AI Server (Ubuntu + NVIDIA GPU),这套组合是天作之合:

  • 延迟极低:直接调用 NVIDIA 显卡硬件编码,而非 CPU 模拟。
  • 体验极致:支持 4K、120Hz、HDR,不仅能远程管理,甚至能远程 3A 游戏。

进阶选择:为什么选择 qiin2333 维护版?

确定了 Sunshine + Moonlight 的大方向后,我们还可以进一步细选。我们将 Sunshine 分为”官方原版”和”社区增强版”。对于国内用户和极致体验追求者,我们推荐 qiin2333 维护的 Foundation 版本

核心对比:官方版 vs qiin2333 维护版

特性官方 Sunshine (LizardByte)Sunshine Foundation (qiin2333)
核心定位追求极致稳定、全平台兼容追求极致功能、体验增强
UI 美观度朴素 (Bootstrap 风格)现代 (Material Design)
易用性中 (配置分散,关键功能隐晦)高 (关键功能一键开关)
虚拟显示器需折腾复杂的 Dummy Driver 或购买 HDMI 诱骗器内置虚拟显示器驱动 (核心优势)
HDR 支持基础支持增强的 HDR 色调映射
中文支持原生中文界面
输入增强标准支持触控笔、陀螺仪、手势映射
麦克风不支持支持远程麦克风直通
稳定性⭐⭐⭐⭐⭐ (LTS 长期维护)⭐⭐⭐⭐ (功能迭代快,偶有 Bug)

为什么在这个场景下推荐 Foundation 版? 最主要的原因是 “无头”服务器的痛点。官方版通常需要你买一个物理的 HDMI 显卡欺骗器(假负载)插在显卡上,才能在不接显示器时输出画面。而 Foundation 版内置了虚拟显示器功能,可以直接在软件层面生成一个 “Virtual Monitor”,支持自定义分辨率和 HDR,完全省去了购买硬件的麻烦。

注意:当然,功能丰富也意味着代码改动大。如果你是极端追求”装好就不管”的稳定性党,或者遇到莫名其妙的 BUG,切回官方版 + 物理诱骗器也是一个稳妥的兜底选择。


第一阶段:构建地基 —— Tailscale 组网

首先,我们需要打通网络,让你的笔记本/手机能随时随地访问家里的服务器。

1. 注册与安装

  1. 访问 Tailscale 官网 注册账号(支持 GitHub/Google 登录)。
  2. 在被控端 (Ubuntu Server) 安装
curl -fsSL https://tailscale.com/install.sh | sh
  1. 启动并登录
sudo tailscale up

终端会弹出一个 URL,复制到浏览器中授权登录即可。

  1. 在控制端 (你的 PC/Mac/手机) 安装
    • 下载对应客户端 app 并登录同一个账号。

此时,两台设备已经处于同一个虚拟局域网内。你可以试着 ping 一下 Ubuntu 的 Tailscale IP(在控制台或 ip addr 可见,通常是 100.x.x.x)。


第二阶段:核心部署 —— Sunshine Foundation (服务端)

你需要安装在 Ubuntu 服务器上。

1. 下载与安装

前往 Sunshine Foundation Release 页面 下载最新的 .deb 包(通常文件名包含 ubuntu-22.04ubuntu-24.04)。

# 示例下载命令 (请务必去 Release 页获取最新 URL)
wget https://github.com/qiin2333/foundation-sunshine/releases/download/v2025.x.x/sunshine.ubuntu-24.04.amd64.deb

# 安装
sudo apt install -f ./sunshine.ubuntu-24.04.amd64.deb

注意:如果不小心安装了官方版,建议先 sudo apt remove sunshine 卸载后再安装此版本,以免配置冲突。

2. 配置 udev 规则 (关键)

为了让 Sunshine 能访问输入设备(鼠标/手柄):

sudo /usr/bin/sunshine-assets/scripts/setup-udev.sh
# 重启生效
sudo reboot

3. WebUI 配置 (开启虚拟显示器)

qiin2333 版的默认端口也是 47990

  1. 浏览器访问 https://<你的Ubuntu-IP>:47990
  2. 输入账号密码(首次启动会让你设置)。
  3. 切换中文:如果界面是英文,可以在右上角或设置里切换语言。
  4. 配置虚拟显示器 (Virtual Display)
    • 进入 设置 (Configuration) -> 音频/视频 (Audio/Video)
    • 找到 虚拟显示器 (Virtual Display) 选项。
    • 将其设置为 Enabled
    • 还可以自定义分辨率,例如 2560x1440 (2K) 或 3840x2160 (4K)。
    • 保存并重启 Sunshine 服务sudo systemctl restart sunshine

这样,即使你的显卡没插任何线,Sunshine 启动时也会自动创建一个虚拟屏幕,供你远程通过。


第三阶段:极致连接 —— Moonlight V+ (客户端)

虽然官方 Moonlight 客户端也能连,但为了配合 Foundation 版的增强功能(如 120Hz、HDR、陀螺仪),我们强烈推荐使用配套的 Moonlight V+ (魔改版),尤其是安卓端。

1. 客户端下载

  • Android (手机/平板/掌机):强烈推荐 Moonlight V+ (qiin2333/moonlight-vplus)
    • 支持 120Hz 高刷。
    • 支持 HDR。
    • 支持屏幕虚拟手柄(搓玻璃神器)。
    • 支持麦克风回传。
  • iOS / Windows / Mac:目前主要使用 官方 Moonlight 即可,V+ 的 PC 版更新较少,主要发力点在安卓移动端。

2. 配对与连接

  1. 打开 Moonlight,确保控制端和被控端都连上了 Tailscale。
  2. 点击 “Add Host” (加号),输入 Ubuntu 的 Tailscale IP
  3. 输入 PIN 码配对。
  4. 开始串流:点击图标,你应该能看到刚刚设置的虚拟显示器画面。

3. 进阶优化

  • 启用 HDR:在 Moonlight 客户端设置里开启 “Enable HDR” (需显示器支持)。
  • 麦克风回传:在 V+ 客户端设置里开启 “Microphone” (需在系统里给予录音权限),这样你在手机对着 AstrBot 说话,服务器端也能听到(方便后续做语音交互)。

备选兜底:UU 远程

虽然 Sunshine + Moonlight 体验无敌,但如果你在极其复杂的网络环境下(Tailscale 打洞失败),或者配置过程中遇到难以解决的依赖问题,网易的 UU 远程 依然是一个值得保留的”备胎”。

它胜在傻瓜式,不需要你懂 Linux 命令,装上就能用,适合作为紧急情况下的远程手段。


总结

通过 Tailscale 搭建的快速内网通道,配合 Sunshine Foundation 强大的虚拟显示和编码能力,你现在的 AstrBot 服务器已经不仅仅是一个冷冰冰的终端窗口了。

它变成了一台随身携带的高性能云电脑。你可以在 iPad 上用 4K 画质写代码,也可以在地铁上用手机远程优化你的 AI 模型。

享受你的私有 AI 之旅吧!