b5f548f1ad405a29b7c6ca48a33e4b8fa4cb11a9
配对窗口是 agent 唯一持有的监听端口,而它授予的是设备信任:谁能带节点密码打到 /provision,谁就拿到一把 agent 会听命的密钥。此前它固定绑所有接口,且没有任何办法 收窄——一台本身能从公网路由到的节点(公网 VPS 上的 SimAdmin、放在非可信网络里的 设备)在窗口开启期间就把这个面暴露给了整个互联网。 现在加 --pair-bind,只接受 IP 字面量。不接受主机名是刻意的:绑定时解析名字意味着 监听地址取决于 DNS 当时说什么,那不是运维做过的决定。 默认值仍是绑所有接口,这个我改过一次又改回来了,原因值得记下来:我先把默认设成 127.0.0.1 并写了理由,然后发现配对按设计走内网、手机要直接打到节点,回环监听从 另一台机器根本连不上——那不是一个加固措施,而是一个永远不工作的流程,用户对这个 功能的第一次体验会是"连接被拒"且没有解释。所以默认保持内网可达,把"节点能从公网 路由到时请收窄"写进部署文档,并在 --pair-bind 上给出显式入口。 测试断言默认值同时满足两件事:是 IP 字面量(不是名字),且不是回环(手机要能连)。 Go 全包、Node 120 项、Swift 107 项通过。
Description
Outbound-only node agent for SimAdmin nodes: long-polls a relay, verifies signed envelopes, and forwards to the local SimAdmin on loopback. Static Go binary, no third-party modules.
268 KiB
Releases
3
simadmin-relay agent 1.0.2
Latest
Languages
Go
96.8%
Shell
2.4%
Makefile
0.8%