skip to content
苍狗苍狗Blog
Table of Contents

你大概也注意到,闲鱼上那种十几二十块的「随身WiFi」其实挺好玩——尤其是**高通410(MSM8916)**方案的板子。它本质就是个四核 Cortex-A53 的迷你安卓设备,原生安卓,刷成 Debian 之后,就能当一台常驻的迷你 Linux 服务器用。

刷完系统之后,有一个项目特别适合跑在这种板子上:

  • VoHive:面向高通 4G/5G 模组的一体化测试平台,支持多卡管理、网页/Bot 收发短信、eSIM 写卡、VoWiFi 模拟外呼测试。

下面把「备份 → 刷 Debian → 装 VoHive」整条链路记一下。刷 Debian 这部分参考了酷安 @lkiuyu 的 UFI003 喂饭教程(非常详细),我按自己板子整理成文字版,顺手把步骤里的坑标出来。


一、先确认你的板子能不能刷

高通410方案的随身WiFi,板子丝印常见有 UFI001BUFI001CUFI003UZ801 等,一般带卡槽、能切卡。拆机看板子丝印最准(通常拧 2~3 颗小螺丝即可)。

  • ✅ 推荐:UFI001B / UFI001C / UFI003 / UZ801(带卡槽、资料多)
  • ⚠️ 谨慎:SP970(细分版本多,大多需短接进 9008,且 OpenWrt WiFi 部分可能还有坑)

二、准备工作

先把工具 + Debian 镜像一体压缩包下好(常见来自整合网盘,如酷安原帖的 123 网盘,提取码 9xom,进入 410-linux 文件夹下载那一个压缩包即可,里面已经包含了工具和镜像,无需再下别的)。解压后大致包含这些:

工具 用途
vivo 驱动 安装高通 9008 相关驱动
Miko Service Tool(含 Loader 破解文件) 进 9008 做全分区备份
Qualcomm Premium Tool(含注册 exe) 刷 aboot 解锁 fastboot、读/写分区
QPST 基带配置(Service Programming)
7zip 解压全量备份里的 modem 固件、wifi 校准文件
debian13 镜像包 含 boot / rootfs 镜像 + readme
一键刷机脚本(flash.bat 等) 刷入 boot / rootfs

安装顺序(Windows):

  1. 双击 vivo 驱动安装,弹出信任签名弹窗点「信任」
  2. Miko:运行安装包,记住安装目录 → 把 Loader.exe 复制到 Miko 安装目录(可发桌面快捷方式,后面常用)
  3. Qualcomm Premium Tool:先运行注册 exe → GenerateKey 生成 key 文件 → 打开主程序导入 key 激活
  4. QPST7zip,默认下一步即可

三、刷机前必做:完整备份(最重要)

不管多熟练,先备份。只要硬件没坏,有全分区备份就能救回。

  1. 装好 vivo 驱动后,进 9008 模式
    • 棒子最好买回来就不要插卡;若已插卡用过,拔卡通电启动、按复位键恢复出厂设置,全程别再插卡
    • 按住复位键,插 USB 口,设备管理器「端口」出现 9008 设备即成功
  2. 桌面双击 Loader.exe 启动 Miko → 切到 Read tab → Partition Backup/EraseLoad Partition Structure 等分区加载完 → Read Full Image → 选保存路径、填文件名 → 保存开始全分区备份
  3. 等待进度条走完,得到棒子全分区备份(你的「后悔药」)。约 5 分钟,看到完成再拔设备

四、刷入 Debian

以下步骤以 UFI003 板子为例。

1. 解锁 fastboot(刷 aboot)

  • 再次按住复位键插 USB 进 9008(设备管理器看 9008 端口)
  • 打开 Qualcomm Premium ToolQualcomm tab → partitionscanDo Job 读取分区
  • Write,在分区表里选中 aboot 分区 → Do Job,选镜像包里的「芷荷aboot」文件刷写
  • 刷完提示 flash finished,关工具,重新插拔棒子正常启动
  • 设备管理器「端口」出现 9091 端口(UFI003 默认开启且保持好几分钟,后面基带配置要用)

2. 基带配置(9091 端口)

  • 打开 QPST 的 Service Programming,插上棒子,等 9091 端口出现,程序里看到设备 → OK
  • Read from Phone → 上方 UMTS System tab → 找到 Perf Service Domain,默认 PS Only,下拉改 CS and PSWrite to Phone
  • 可能提示 ban,不影响;可再 Read 确认是否改成功(或拔插重读一次)

3. Web 后台切外置卡槽

  • 棒子正常启动,电脑/手机连棒子 wifi,访问 192.168.100.1(密码默认 admin
  • 左侧「因特网」→「sim卡切换」→ 下拉选 sim 卡 → 确定,密码 UFIadmin88888 → 切到外置卡槽,web 提示「未插卡」即可

4. 刷入 Debian 镜像

  • 解压 debian13 压缩包,里面有 boot 和 rootfs 镜像 + readme
  • 选内核:带 nooc 后缀是非超频,不带是超频到 1.9G;本文选非超频的 boot-ufi001c-nooc.img(UFI003 系列同样适用此固件)和通用 rootfs
  • 把 boot 镜像重命名为 boot.img,放进「一键刷机脚本工具」文件夹
  • 确认设备管理器 adb 设备还在、web 显示外置卡槽且无卡 → 双击 flash.bat 回车一键刷入
    • 注:从安卓刷到 debian 用 flash.bat;后续在 debian 下只重刷 boot/rootfs 用另一个脚本
  • 脚本结束回车退出会自动重启,耐心等待棒子启动

5. 驱动切换 RNDIS

  • 启动后设备管理器有 adb 设备;若只有 adb 没 rndis,手动切:
    • 右键 adb 设备 → 更新驱动程序 → 浏览计算机 → 从列表选 → USB Composite Device → 重新插拔棒子
    • 重新插上后出现 adb 设备 + 一个「其他设备」(即 RNDIS),右键它 → 更新驱动 → 网络适配器 → Microsoft基于远程 NDIS 的 Internet 共享设备 → 下一步完成
  • 之后就能 SSH 连接,IP 和密码都在镜像包 readme 里

6. 一键补全基带(modem 固件 + wifi 校准)

  • 7zip 打开之前的全分区备份,找 0.modem.fat23.persist.img
  • 0.modem.fatimage 文件夹所有文件 → 解压到「一键替换基带」文件夹的 modem 目录
  • 23.persist.imgWCNSS_qcom_wlan_nv.bin → 解压到 modem/wlan/prima 目录
  • 返回「一键替换基带」主目录,双击 一键通过adb替换基带.bat 等待完成

7. 收尾

Debian13 默认开热点,若要连 wifi 用:

Terminal window
nmcli con down WIFI

执行完即可用 nmtui 命令连接 wifi 网络。


五、安装 VoHive(模组测试平台)

它是什么

VoHive 是面向高通 4G/5G 模组的一体化测试平台,核心能力:

  • 网页 / Bot 收发短信
  • 多卡统一管理
  • 实体 eSIM / eUICC 管理(加卡、切卡、删卡)
  • Telegram / 飞书 / QQ Bot 条件触发
  • VoWiFi 测试/vocall 发起 VoWiFi 模拟外呼测试

适用硬件明确包含高通410 WiFi 板子(需先刷 debian/openwrt,且得有折腾能力),以及移远 EC20CE / EM500Q 等模组。

项目地址:

Lorem ipsum dolor sit amet, consectetur adipiscing elit.
00K00KMIT

安装

官方是「本地分发仓库」:二进制就在仓库 release/ 目录里,安装脚本直接用本地二进制无需联网下载,比管道执行第三方脚本更安全。

Terminal window
# 1) 克隆仓库
git clone https://github.com/Orson-Yan/Vohive-155.git
cd Vohive-155
# 2) 运行安装脚本(自动识别 amd64/arm64/armv7,从 release/ 选对应二进制,并注册 systemd 服务)
sudo sh install.sh
# 仅安装二进制、跳过服务注册(可选)
sudo sh install.sh --no-systemd
# 预览将执行的操作、不实际改动系统(推荐先跑一次看清楚)
sh install.sh --dry-run
# 卸载
sudo sh uninstall.sh

安装完成后访问 http://<设备IP>:7575,默认 Web 账号密码 admin / admin

  • 二进制:/opt/vohive/bin/vohive
  • 配置:/opt/vohive/config/config.yaml
  • 数据:/opt/vohive/data

可选:Docker 部署

如果板子跑的是带 Docker 的系统(如 iStoreOS),可直接用已发布镜像 orsoman/vohive(支持 amd64 / arm64 / armv7):

Terminal window
docker run -d --name vohive \
--network host --privileged \
-v /dev:/dev \
-v "$PWD/config:/app/config" \
-v "$PWD/data:/app/data" \
-v "$PWD/logs:/app/logs" \
--restart unless-stopped \
orsoman/vohive:latest

--privileged + /dev 直通让容器内模组的控制口(ttyUSB* / cdc-wdm*)可见,并支持热插拔。访问地址同样是 http://<设备IP>:7575

可选:调整 USB 模式

如果模组当前 USBNET 模式不对(例如不是 QMI),可调:

Terminal window
sudo apt update
sudo apt install -y socat
# 切到常见 QMI 模式并重启模组(/dev/ttyUSB2 仅为示例,按你设备实际 AT 口调整)
echo 'AT+QCFG="usbnet",0;+CFUN=1,1' | sudo socat - /dev/ttyUSB2,crnl

共存注意

VoHive 在 QMI 模式下会优先通过 qmi-proxy 打开控制口,可与系统 ModemManager 共用 QMI 通道。但不要两边同时管理拨号 / APN / 数据连接,否则会打架。

界面速览

安装完成后访问 http://<设备IP>:7575,默认账号 admin / admin。下面是跑在 UFI003 + Debian 上的几个常用页面:

设备管理 - 概览

设备管理页面能看到当前在线的 410 卡槽、运营商、信号强度、网络模式、IMEI/ICCID 等基础信息,还能执行重启模组、切 IP、发短信等操作。

代理管理 - VoWiFi 漫游前置代理

代理管理用于配置 VoWiFi 漫游前置 Socks5 代理,主要配合 eSIM 使用 WiFi Calling(VoWiFi)等海外运营商场景。注意:VoHive 已禁止国内运营商卡发起 VoWiFi,请遵守当地法规与运营商条款,勿用于违规用途。

短信中心

短信中心按联系人聚合,收验证码、回短信都可以在这里完成,也能把新短信转发到 Telegram Bot、飞书 Bot、QQ Bot、Bark、Email、Pushplus 或自定义 Webhook。

设备管理 - eSIM / eUICC

在 eSIM 标签页可以管理 eUICC 实体卡里的 Profile:切换、改名、删除,或下载新的 Profile。


六、拓展:用 Cloudflare Tunnel 远程访问(不在家也能管)

板子刷好 Debian、装好 VoHive 后,它其实是个常驻在家的迷你服务器。但 192.168.x.x 只在家里局域网能访问——人一出门就够不着了。

常见的「出门也能管」方案有两种:

  • DDNS + 路由器端口映射:需要公网 IP,还要在路由器上开端口、配转发,既麻烦又有暴露风险;
  • Cloudflare Tunnel:走 Cloudflare 边缘节点,不需要公网 IP、不用在路由器开任何端口,还能顺手套一层 Access 登录保护。

方案一:临时隧道(最快,免域名)

只想临时在外面看一眼 VoHive,不想配域名,一条命令就行:

Terminal window
# 在板子上执行,会返回一个 https://xxxx.trycloudflare.com 临时地址
cloudflared tunnel --url http://localhost:7575

浏览器打开这个地址即可访问 VoHive。缺点:地址每次重启都会变、不持久,适合临时调试。

方案二:稳定隧道(Cloudflare Zero Trust + Docker,推荐)

这是 Cloudflare 官方现在主推的**托管隧道(managed tunnel)**方式:在 Zero Trust 网页控制台里创建隧道、拿到一条 docker run ... --token 命令,在板子上跑一句就完成连接。之后所有路由都在网页上添加,不用本地登录、不用写 config.yml、不用手动改 DNS

1. 在 Cloudflare 创建隧道

  1. 登录 Cloudflare 控制台 → 左侧 Zero TrustNetworksTunnels
  2. 点右上角 「创建隧道」
Cloudflare Tunnels 创建入口
  1. 选择 Cloudflared
  2. 给隧道起个名字,比如 410(随意填)
  3. 进入下一步,会看到一条带 token 的 Docker 启动命令,类似:
Docker 启动命令与 token
Terminal window
# 复制页面上的命令,在 UFI003 板子上直接执行(token 以自己页面为准)
docker run cloudflare/cloudflared:latest tunnel --no-autoupdate run --token <你的 token>

容器会拉镜像、连到 Cloudflare,看到类似下图这样显示隧道在线,就说明通了。

隧道详情页 - 健康状态

2. 后台常驻运行

临时跑的那条命令一关终端就停了。让容器常驻:

Terminal window
docker run -d --name cloudflared \
--restart unless-stopped \
cloudflare/cloudflared:latest tunnel --no-autoupdate run --token <你的 token>
# 查看状态 / 日志
docker ps | grep cloudflared
docker logs -f cloudflared

3. 在网页控制台添加路由

回到 Zero Trust → Networks → Tunnels,点刚才创建的隧道 → 配置,添加 Public Hostname:

字段 示例值 说明
子域名 vohive 最终访问 vohive.example.com
域名 example.com 你自己在 Cloudflare 的域名
类型 HTTP VoHive 是 Web 后台
URL localhost:7575 板子本机 VoHive 端口

同样再加一条 SSH(类型选 SSH,URL 填 localhost:22),以后在外面就能:

Terminal window
# 访问 VoHive 后台
https://vohive.example.com
# SSH 进棒子(本地机器需装 cloudflared 客户端)
cloudflared access ssh --hostname ssh.example.com

强烈建议:先改密码,再加 Access 登录保护

隧道建好后,子域名公开可达,任何人都能访问你的 VoHive 后台。而 VoHive 默认账号密码是 admin/admin,如果不改,就等于把设备管理权开放给全网。

所以第一步:进 VoHive 后台 → 找到账号/设置页面,把默认密码改成强密码。注意 VoHive 的默认账号 admin 不可修改,只能改密码,所以密码一定要设强。

第二步(更保险):在 Cloudflare Zero Trust(免费额度够个人用)再加一道登录保护,即使密码泄露,也要先过 Cloudflare 的邮箱/OTP 验证:

  1. Cloudflare 控制台 → Zero TrustAccessApplicationsAdd an application
  2. vohive.example.com(和 ssh.example.com
  3. Policy 里加一条 Email 规则,填你自己的邮箱
  4. 保存后,访问这两个子域名会先跳 Cloudflare 登录,验证通过才放行进后台

安全提醒

  • 隧道链路本身是加密的,但子域名公开可达,务必先改默认密码,再加 Access 登录,别让 admin/admin 裸奔。
  • SSH 不要裸暴露,走 cloudflared access ssh + Access 策略。
  • 远程管理涉及设备凭证,只在你信任的网络和设备上操作,别把隧道 / Access 配置泄露给他人。
  • 保持 cloudflared 版本更新,关注官方安全公告。

七、注意事项

  • 先备份再折腾:任何改 modem、频段、eSIM 的操作前,先确保全分区备份(含 QCN/modem 固件)在手。

  • 发热 / 稳定性:高通410板子满载会热,长期 7×24 建议加个小散热片/风扇,稳定性明显提升。

    下图是我给 UFI003 贴的一块散热片,正、侧面供参考:

    散热片正面 散热片侧面
  • 合规:VoHive 声明仅供个人测试,注意遵守当地法规、运营商条款,别用于违规场景。


八、参考链接