| 版本 | 是否支持 |
|---|---|
| 1.x | ✅ |
| < 1.0 | ❌ |
请勿在公开 Issue / PR 中报告安全问题。发送邮件至维护者(见 README.md 联系方式),
主题注明 [security]。我们会在 5 个工作日内回复确认,并协同披露计划。
代理把嵌入式设备的串口控制台暴露为网络服务,设备控制台通常就是 root shell。 能连上代理的人 = 能完全控制设备。请务必:
- 优先使用 SSH 方式(
devctl --ssh ...):client 不需要开放任何监听端口, 复用 SSH 的传输加密与认证。 - 使用 TCP 方式时:
- 只监听可信网段,必要时
-Listen 127.0.0.1+ SSH 隧道; - 用防火墙限制来源 IP(仅放行你的 server);
- 务必设置口令:agent 启动加
-Auth <token>/--auth <token>, devctl 侧用--token <token>提供。
- 只监听可信网段,必要时
- 不要把代理端口(默认
7801)暴露到公网或做端口映射。 - 反向隧道场景(
-R)请只绑定127.0.0.1,例如-R 127.0.0.1:7801:127.0.0.1:7801。 - 认证为明文口令(无挑战-应答),因此只在 SSH / 内网 / VPN 环境下使用。
- 设备与 client 上会落地临时文件(
/tmp/.devctl_blk、/tmp/.devctl_probe), 共享主机上请注意权限;命令执行不做任何权限提升或沙箱隔离。
- 协议本身不提供加密与完整性保护(依赖 TCP/SSH)。
SHELL透传模式无鉴权之外的输入过滤,设备侧命令执行后果由使用者承担。