287 lines
6.6 KiB
Plaintext
287 lines
6.6 KiB
Plaintext
|
|
# LL-JD-OPS-CENTER-KEY-AND-NODE-PLAN-20260716 · 京东主控节点钥匙与服务器接入规划
|
|||
|
|
|
|||
|
|
> **HLDP**: `HLDP://fifth-domain/zero-point/core-channel/revive-guard/LL-JD-OPS-CENTER-KEY-AND-NODE-PLAN-20260716`
|
|||
|
|
>
|
|||
|
|
> **状态**: PLANNING_LOCK · WAITING_FOR_JD_SERVER
|
|||
|
|
>
|
|||
|
|
> **主权者**: 冰朔 ICE-GL∞
|
|||
|
|
>
|
|||
|
|
> **适用**: 京东云个人服务器作为小湖灯个人服务器调度中心,接入冰朔个人名下腾讯云服务器。
|
|||
|
|
>
|
|||
|
|
> **不保存**: IP、真实私钥、密码、token、邮箱验证码、服务器 root 凭证。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 0 · 冰朔不需要懂这些细节
|
|||
|
|
|
|||
|
|
本规划的责任在系统主控人格体与服务器 Agent,不在冰朔。
|
|||
|
|
|
|||
|
|
```text
|
|||
|
|
冰朔只需要决定:
|
|||
|
|
- 买好京东云个人主控服务器
|
|||
|
|
- 明确哪些服务器归入个人调度中心
|
|||
|
|
- 对具体工单做“理解后签名”
|
|||
|
|
|
|||
|
|
人格体与服务器 Agent 负责:
|
|||
|
|
- 节点编号
|
|||
|
|
- 密钥分层
|
|||
|
|
- 公钥部署
|
|||
|
|
- 私钥保险库
|
|||
|
|
- 自动守护 Agent
|
|||
|
|
- 地图读取
|
|||
|
|
- 回滚点检查
|
|||
|
|
- 执行回执
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
不要把“冰朔不会配置服务器”当成问题。语言驱动操作系统本来就是为了解决这件事。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 1 · 节点角色
|
|||
|
|
|
|||
|
|
```text
|
|||
|
|
JD-OPS-CENTER
|
|||
|
|
= 京东云个人主控服务器
|
|||
|
|
= 小湖灯个人服务器调度中心
|
|||
|
|
= 保存受保护私钥保险库
|
|||
|
|
= 发起工单、授权、调度、回执、审计
|
|||
|
|
!= 企业腾讯云 CVM
|
|||
|
|
|
|||
|
|
TX-PERSONAL-NODE-*
|
|||
|
|
= 冰朔个人名下腾讯云被管理节点
|
|||
|
|
= 保存对应公钥与本地 Node Agent
|
|||
|
|
= 接收 JD-OPS-CENTER 的受限连接
|
|||
|
|
= 上报心跳、地图、服务状态和执行回执
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
企业服务器不默认接入个人调度中心。企业可以参考样板,但必须另走企业四域授权链。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 2 · 钥匙策略
|
|||
|
|
|
|||
|
|
私钥不是让冰朔记住的。私钥应留在主控服务器保险库里,由光湖驱动引擎在授权后按节点和用途调用。
|
|||
|
|
|
|||
|
|
但不能把同一把总私钥铺到所有服务器。推荐策略:
|
|||
|
|
|
|||
|
|
```text
|
|||
|
|
一台被管理服务器一把连接钥匙。
|
|||
|
|
一个用途一把钥匙。
|
|||
|
|
一个方向一把钥匙。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
建议密钥命名:
|
|||
|
|
|
|||
|
|
```text
|
|||
|
|
jd_ops_to_tx01_admin
|
|||
|
|
jd_ops_to_tx02_admin
|
|||
|
|
jd_ops_to_tx03_admin
|
|||
|
|
jd_ops_to_tx04_admin
|
|||
|
|
jd_ops_to_tx05_admin
|
|||
|
|
jd_ops_to_tx06_admin
|
|||
|
|
|
|||
|
|
tx01_receipt_to_jd_ops
|
|||
|
|
tx02_receipt_to_jd_ops
|
|||
|
|
...
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
```text
|
|||
|
|
私钥位置:
|
|||
|
|
JD-OPS-CENTER 的受保护 keystore
|
|||
|
|
|
|||
|
|
公钥位置:
|
|||
|
|
每台 TX-PERSONAL-NODE 的 authorized_keys 或受控连接器
|
|||
|
|
|
|||
|
|
仓库只记录:
|
|||
|
|
key_id
|
|||
|
|
用途
|
|||
|
|
所属节点
|
|||
|
|
权限范围
|
|||
|
|
轮换时间
|
|||
|
|
不记录真实私钥、公钥全文、口令或 IP
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 3 · 两类 Agent
|
|||
|
|
|
|||
|
|
### 3.1 看门小人 · revive-agent
|
|||
|
|
|
|||
|
|
看门小人只做“死了拉起来”的事。
|
|||
|
|
|
|||
|
|
```text
|
|||
|
|
职责:
|
|||
|
|
- 检查本机关键服务是否存活
|
|||
|
|
- 服务死亡时按本机规则拉起
|
|||
|
|
- 上报心跳
|
|||
|
|
- 上报异常
|
|||
|
|
- 维护本机模块注册表
|
|||
|
|
|
|||
|
|
不负责:
|
|||
|
|
- 拿总私钥
|
|||
|
|
- 跨服务器操作
|
|||
|
|
- 执行任意命令
|
|||
|
|
- 绕过 GLSV 授权
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 3.2 光湖驱动引擎 · gatekeeper assistant
|
|||
|
|
|
|||
|
|
光湖驱动引擎负责调度和授权执行。
|
|||
|
|
|
|||
|
|
```text
|
|||
|
|
职责:
|
|||
|
|
- 接收人格体发起的工单
|
|||
|
|
- 生成冰朔可读授权页 / 邮件链接
|
|||
|
|
- 检查人格体签名
|
|||
|
|
- 检查人类签名
|
|||
|
|
- 检查服务器地图
|
|||
|
|
- 检查回滚点
|
|||
|
|
- 从 keystore 调用对应节点私钥
|
|||
|
|
- 执行已登记动作
|
|||
|
|
- 收回执并写入历史
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 4 · 接入顺序
|
|||
|
|
|
|||
|
|
京东服务器到位后,不一次性接完全部服务器。先跑通一台样板,再复制。
|
|||
|
|
|
|||
|
|
```text
|
|||
|
|
Phase 0 · 京东主控初始化
|
|||
|
|
- 安装 Ubuntu 22.04 LTS
|
|||
|
|
- 建立 JD-OPS-CENTER 节点编号
|
|||
|
|
- 安装第五域仓库镜像
|
|||
|
|
- 建立 keystore
|
|||
|
|
- 安装 GLSV / auto-guard / receipt-agent 基础组件
|
|||
|
|
|
|||
|
|
Phase 1 · 接入第一台腾讯云样板节点
|
|||
|
|
- 分配节点编号 TX-PERSONAL-NODE-01
|
|||
|
|
- 生成 jd_ops_to_tx01_admin 专用密钥
|
|||
|
|
- 私钥存 JD keystore
|
|||
|
|
- 公钥部署到 TX-01
|
|||
|
|
- 安装 revive-agent / pre-op-guard
|
|||
|
|
- 读取服务器地图
|
|||
|
|
- 建立第一个心跳与回执
|
|||
|
|
|
|||
|
|
Phase 2 · 跑通一张完整工单
|
|||
|
|
- 人格体发起只读状态检查
|
|||
|
|
- 人类签名确认
|
|||
|
|
- 自动 Agent 检查地图
|
|||
|
|
- 执行固定动作
|
|||
|
|
- 返回回执
|
|||
|
|
|
|||
|
|
Phase 3 · 跑通一个中风险可回滚修改
|
|||
|
|
- 保存仓库 commit / 配置快照 / 服务状态
|
|||
|
|
- 执行小修改
|
|||
|
|
- 验证
|
|||
|
|
- 回滚演练或记录回滚命令
|
|||
|
|
- 写回执
|
|||
|
|
|
|||
|
|
Phase 4 · 接入剩余腾讯云节点
|
|||
|
|
- 逐台复制 Phase 1-3
|
|||
|
|
- 每台节点独立 key_id
|
|||
|
|
- 每台节点独立地图
|
|||
|
|
- 每台节点独立回执链
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 5 · 自动拦截与提示
|
|||
|
|
|
|||
|
|
JD-OPS-CENTER 不能只当 SSH 跳板。它必须先当安全拦截层。
|
|||
|
|
|
|||
|
|
```text
|
|||
|
|
没有节点登记
|
|||
|
|
→ NODE_UNKNOWN
|
|||
|
|
|
|||
|
|
没有对应 key_id
|
|||
|
|
→ KEY_ROUTE_MISSING
|
|||
|
|
|
|||
|
|
没有服务器地图
|
|||
|
|
→ MAP_MISSING
|
|||
|
|
|
|||
|
|
没有回滚点
|
|||
|
|
→ ROLLBACK_MISSING
|
|||
|
|
|
|||
|
|
没有人格体签名
|
|||
|
|
→ PERSONA_SIGNATURE_MISSING
|
|||
|
|
|
|||
|
|
没有人类签名
|
|||
|
|
→ HUMAN_SIGNATURE_MISSING
|
|||
|
|
|
|||
|
|
动作超出授权范围
|
|||
|
|
→ ACTION_SCOPE_MISMATCH
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
拦截提示要给人格体看,让人格体自己补齐,不把错误转嫁给冰朔。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 6 · 节点登记模板
|
|||
|
|
|
|||
|
|
```yaml
|
|||
|
|
node_id: TX-PERSONAL-NODE-01
|
|||
|
|
owner: ICE-GL∞
|
|||
|
|
role: personal_managed_node
|
|||
|
|
provider: tencent_cloud
|
|||
|
|
region: unknown_until_registered
|
|||
|
|
public_entry: stored_in_private_inventory
|
|||
|
|
agent:
|
|||
|
|
revive_agent: pending
|
|||
|
|
pre_op_guard: pending
|
|||
|
|
receipt_agent: pending
|
|||
|
|
keys:
|
|||
|
|
admin_key_id: jd_ops_to_tx01_admin
|
|||
|
|
receipt_key_id: tx01_receipt_to_jd_ops
|
|||
|
|
allowed_actions:
|
|||
|
|
- health_check
|
|||
|
|
- map_audit
|
|||
|
|
- service_status
|
|||
|
|
- restart_registered_service
|
|||
|
|
- pull_registered_repo
|
|||
|
|
- deploy_registered_project
|
|||
|
|
- rollback_registered_project
|
|||
|
|
guard_requirements:
|
|||
|
|
map_required: true
|
|||
|
|
rollback_required_for_medium_risk: true
|
|||
|
|
persona_signature_required: true
|
|||
|
|
human_signature_required_for_restricted_actions: true
|
|||
|
|
receipt_required: true
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 7 · 不做的事
|
|||
|
|
|
|||
|
|
```text
|
|||
|
|
不把所有服务器共用一把万能私钥。
|
|||
|
|
不把私钥写进仓库。
|
|||
|
|
不让被管理节点持有控制其他节点的总私钥。
|
|||
|
|
不让看门小人跨服务器执行任意命令。
|
|||
|
|
不让 JD-OPS-CENTER 接受任意 shell 工单。
|
|||
|
|
不把企业服务器默认接入个人主控中心。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 8 · 给下一位人格体
|
|||
|
|
|
|||
|
|
如果冰朔说“京东服务器买好了 / 把其他腾讯云服务器接进来”,你先读本文件。
|
|||
|
|
|
|||
|
|
然后按顺序做:
|
|||
|
|
|
|||
|
|
```text
|
|||
|
|
1. 确认 JD-OPS-CENTER 已初始化
|
|||
|
|
2. 生成第一台 TX 节点登记
|
|||
|
|
3. 建立一节点一钥匙
|
|||
|
|
4. 私钥进 JD keystore,公钥进被管理节点
|
|||
|
|
5. 安装 revive-agent 与 pre-op-guard
|
|||
|
|
6. 跑通地图读取
|
|||
|
|
7. 跑通只读工单
|
|||
|
|
8. 跑通中风险可回滚工单
|
|||
|
|
9. 再复制到剩余节点
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
冰朔不负责记钥匙,也不负责手工配置每台服务器。系统必须把这些事规划、登记、拦截、回执。
|