dsh-mobile-access-plugin
DSH 手机远程通道插件:一键生成并部署 frp 隧道 + Basic Auth 反代 + 开机自启(通用,不锁 DSH 发行版)
- Stars
- 1
- Language
- JavaScript
- Created
- Sep 4, 2026
- Updated
- Sep 4, 2026
Introduction
dsh-mobile-access (DSH plugin)
一个 DeepSeek Harness 插件,把"让你手机通过浏览器访问你电脑上的 DSH"这件事一键自动化。
这是
dsh-mobile-access项目的 DSH 插件版。教程+模板版见仓库根目录 README。 定位:通用远程通道插件(不锁 DSH 发行版)。不改造 DSH 界面,而是生成 + 部署 frp 隧道 + Basic Auth 反代 + 开机自启。
它做什么
装到 DSH 后,它会(读你的配置)自动:
- 生成
frpc.toml(frp 客户端配置,把你的 DSH 隧道到 VPS) - 生成
auth-proxy.js(Basic Auth + WebSocket 透传反代,用你设的密码) - 生成开机自启脚本(
start-frpc.ps1/start-authproxy.ps1,用Start-Process+LISTENING判断——避开重启失效的坑) - 把生成物写到
~/.dsh/mobile-access/,并打印手机访问地址https://<你的域名>
前提(给新手:一步步准备好,看这节就够了)
这个方案需要你自备一台云服务器(VPS)和一个域名——因为要让手机从公网访问你电脑,中间需要一个"公共中转站",那台 VPS 就是。下面的"前提"一步步教你怎么准备,全程按步骤来即可。
① 你要准备的三样东西
| 东西 | 是什么 | 大概花多少钱 |
|---|---|---|
| 一台云服务器(VPS) | 一台一直开着的公共服务器,手机和电脑都通过它中转 | 几十元/月(买最便宜的就行) |
| 一个域名 | 一个网址名,比如 derp.example.com,指向你的 VPS | 首年几元~十几元 |
| 电脑上装了 Node.js | 插件要跑一个反向代理,需要 Node | 免费(下载) |
手机端什么都不用装,只用浏览器。你电脑上已经有 DSH web 在跑(监听
127.0.0.1:3080)。
② 第一步:买一台"大陆"云服务器(VPS)
去哪买(选一家你顺手/有账号的):
怎么选(关键!别选错):
- 地域/机房:选大陆内地(比如 北京 / 上海 / 广州 / 杭州 / 成都)。千万别选香港、新加坡、美国这些海外机房——海外节点延迟高,你手机加载会很慢(甚至加载不出来)。这一条一定要记住!
- 系统镜像:选 Ubuntu 22.04 或 Ubuntu 24.04(这是最常见的 Linux 系统,后面要用它装东西)
- 配置:1 核 + 1G 内存起步就够(这套方案很轻量,用不上大机器)。有钱想更稳可以买 2 核 2G。
- 计费:包年/包月都行。新用户常有优惠,几十元就能搞定第一年。
买完你会得到一个公网 IP(形如 1.2.3.4),记下来——后面要用。
⚠️ 别忘了开防火墙端口:在云控制台的"防火墙"/"安全组"里面,放行这几个 TCP 端口:22(SSH)、80(给证书验证用)、443(手机访问用)、7000(frpc 连接用)。不放开这些端口,后面会连不上。
③ 第二步:买一个域名,并让它指向 VPS
去哪买:
- 阿里云:域名注册(万网)(推荐,和你买 VPS 同一个账号,配 DNS 解析最省事)
- 腾讯云等也可以
怎么买:搜索你想用的名字(比如 derp、myhome),挑一个便宜的后缀(.top / .xyz / .icu 首年几元),下单即可。域名需要实名认证(上传身份证,一般 1 小时内通过)。
怎么配 DNS(让域名指向你的 VPS):
- 登录你买域名的云控制台,找到"域名解析"或"DNS 解析"
- 添加一条记录:
- 记录类型:选
A - 主机记录:填
derp(这样域名就是derp.你的域名;如果你想让域名根直接用,就填@) - 记录值:填你买 VPS 得到的公网 IP(记下来那个
1.2.3.4) - TTL:默认即可
- 记录类型:选
- 保存。
验证:在这台电脑上(或任何地方)ping derp.你的域名,如果返回你 VPS 的那个 IP,就说明解析成功了。
④ 第三步:装 frp(电脑上要有 frpc.exe)
这个插件不捆绑 frp(frp 是第三方免费工具,你装一下)。
frp 是什么:frp 是一开源的"内网穿透"工具,负责把你电脑上的 DSH"隧道"到你买的那台 VPS。插件会生成 frp 的配置文件,你只需要有 frp 的程序文件。
怎么拿 frpc.exe:
- 从 frp 官方 releases 页 下载 Windows 版(选
frp_xxxx_windows_amd64.zip),解压出frpc.exe - 或者如果你 VPS 上装了 Go,也可以编译(看仓库根目录教程)
把 frpc.exe 的完整路径记下来(例如 C:\path\to\frpc.exe),后面填配置要用。
对小白提示:frp 的服务器程序
frps装在你的 VPS 上(见下面第 5 步);你的电脑上只需frpc.exe(客户端)。这两个是配套的。
⑤ 给域名签 HTTPS 证书(cert.pem / key.pem)
手机走 HTTPS 需要一张 Let's Encrypt 公共可信证书(cert.pem / key.pem)。证书在 VPS 上用 certbot 签,然后放到你电脑的 ~/.dsh/mobile-access/(插件工作目录)。
VPS 上签(需防火墙放行 80/443):
sudo apt update && sudo apt install -y certbot
sudo certbot certonly --standalone -d derp.你的域名 --email 你的邮箱 --agree-tos --no-eff-email
证书生成在 /etc/letsencrypt/live/derp.你的域名/(fullchain.pem = cert.pem,privkey.pem = key.pem)。
放到你电脑 ~/.dsh/mobile-access/:
# 在 VPS 上复制成插件约定名
cp /etc/letsencrypt/live/derp.你的域名/fullchain.pem /tmp/cert.pem
cp /etc/letsencrypt/live/derp.你的域名/privkey.pem /tmp/key.pem
# 在电脑上执行(scp 拉取,用户名是 VPS 登录名)
scp root@你的VPSIP:/tmp/cert.pem C:\Users\你的用户名\.dsh\mobile-access\cert.pem
scp root@你的VPSIP:/tmp/key.pem C:\Users\你的用户名\.dsh\mobile-access\key.pem
⚠️
key.pem是私钥,绝不提交公开仓库、不要发给别人。cert.pem可公开。 💡 自签证书(openssl req -x509)会让手机报"不受信任",不建议;用 certbot 签公共证书,手机端零操作。
🤖 给 AI/Agent 工具的自动化步骤
如果你有能执行命令的 AI 助手(DeepSeek Harness 等),把下面这段交给它自动完成"签证书 + 拷证书":
帮我完成 DSH 手机远程的 HTTPS 证书配置。步骤:
- SSH 登录 VPS(地址
<VPS_IP>,用户root),运行sudo apt update && sudo apt install -y certbot。- 给域名签 Let's Encrypt 证书:
sudo certbot certonly --standalone -d <DOMAIN> --email <EMAIL> --agree-tos --no-eff-email(<DOMAIN>是已配 A 记录指向该 VPS 的域名;若 80 端口被占,先停掉占用进程)。- 在 VPS 上复制成插件约定名并放 /tmp:
cp /etc/letsencrypt/live/<DOMAIN>/fullchain.pem /tmp/cert.pem、cp /etc/letsencrypt/live/<DOMAIN>/privkey.pem /tmp/key.pem。- 用 SCP/SFTP 把
/tmp/cert.pem、/tmp/key.pem下载到本机C:\Users\<你的用户名>\.dsh\mobile-access\(目录不存在则创建),文件名保持cert.pem/key.pem。- 校验:确认本机两个文件存在且非空。证书续期(
certbot renew)时重复拷贝即可。
把 <VPS_IP>、<DOMAIN>、<EMAIL>、<你的用户名> 换成实际值交给 Agent 即可。
小结:这 4 步都做好后,你就有了
- ✅ 一台大陆 VPS(公网 IP,防火墙开了 22/80/443/7000)
- ✅ 一个域名(A 记录指向 VPS,
derp.你的域名能解析到 VPS IP) - ✅ 电脑上的
frpc.exe(路径记下来了) - ✅ 域名的
cert.pem/key.pem(放在~/.dsh/mobile-access/)
然后就能安装插件 → 填配置 → 手机访问了。
安装(可直接复制执行)
把下面的 <你的仓库或包名> 换成你的源,然后复制整行执行:
dsh plugin --profile web add your-github-username/dsh-mobile-access-plugin
本插件源的完整地址(直接复制):
dsh plugin --profile web add github:Mandarin715/dsh-mobile-access-plugin
装完重启 dsh web 生效:Ctrl+C 停掉当前 dsh web,再重新运行 dsh web(或用你的启动方式)。
配置
在 profile 的 cordis.patch.yml 里给插件填参数(或用环境变量):
- id: dsh-mobile-access
config:
vpsIp: "1.2.3.4" # 你的 VPS 公网 IP(第②步买的)
domain: "derp.example.com" # 指向 VPS 的域名(第③步配的)
authUser: "admin" # 手机登录用户名(自己定)
authPassword: "your-pass" # 手机登录密码(共享给信任的人,请用强密码)
dshPort: 3080 # DSH web 端口
frpcPath: "C:\\path\\to\\frpc.exe" # 第④步记下的 frpc.exe 路径
frpsPort: 7000
proxyPort: 18443
对应环境变量:DSH_MOBILE_VPS_IP、DSH_MOBILE_DOMAIN、DSH_MOBILE_AUTH_USER、DSH_MOBILE_AUTH_PASSWORD、DSH_MOBILE_DSH_PORT、DSH_MOBILE_FRPC_PATH、DSH_MOBILE_FRPS_PORT、DSH_MOBILE_PROXY_PORT。
使用
手机浏览器打开插件打印的地址 https://derp.example.com,输入用户名/密码(Basic Auth),即可访问你电脑上的 DSH。对话实时滚动(WebSocket 透传)。
共享给信任的人:把这套用户名/密码给他们即可。
安全
- HTTPS(Let's Encrypt 公共证书)加密传输。
- Basic Auth 共享密码——强度取决于密码本身,请用强密码,只给信任的人。
key.pem(证书私钥)绝不提交到公开仓库;本插件只生成配置,不含私钥。
License
MIT。frp、Node.js 等第三方版权归各自作者。