评估 laptop TPM 作为 SPIRE 宿主机硬件身份与启动信任根 #50

Open
opened 2026-09-13 15:27:07 +00:00 by panxiao81 · 0 comments
Owner

背景

laptop 内置 TPM 2.0 可以为宿主机提供不可轻易复制的硬件身份,并保护本地启动和磁盘密钥。当前 SPIRE 首要目标仍是完成基础上线;本议题属于后续增强,不应阻塞现有部署。

目标

  • 评估在 laptop 宿主机部署独立 SPIRE Agent,并使用 tpm_devid NodeAttestor
  • 设计 LDevID 的签发、provision、轮换和灾难恢复流程
  • 评估 TPM 绑定的 LUKS2 自动解锁,以及 Secure Boot / measured boot / PCR 策略
  • 为裸机 systemd 服务、基础设施 daemon 和其他非 Kubernetes workload 提供 SPIFFE 身份
  • 明确 Kubernetes 内 SPIRE Agent 继续使用 k8s_psat,避免把集群节点身份强耦合到单台机器的 TPM

边界与原则

  • OpenBao 继续承担集中式 secret、PKI、SSH CA 和动态凭据管理;TPM 不替代 OpenBao
  • 第一阶段不把 SPIRE trust domain 的唯一 CA/signing key 绑定到 laptop TPM
  • 在缺少多 TPM 节点、离线恢复和密钥备份方案前,不引入 TPM Server Attestor/Signer 作为生产信任根
  • 必须保留磁盘离线恢复密钥,不能让主板或 TPM 故障导致数据不可恢复

验证项

  • 盘点 TPM 2.0、Secure Boot、固件和内核支持状态
  • 验证 /dev/tpmrm0 与 TPM resource manager 可用性
  • 制作 host SPIRE Agent 的最小 PoC
  • 验证 tpm_devid attestation、SVID 获取与轮换
  • 记录 LDevID provision 与吊销流程
  • 验证一个非 Kubernetes systemd workload 使用 Workload API
  • 设计重装系统、主板损坏、TPM clear 时的恢复流程
  • 决定是否启用 TPM + LUKS2 + measured boot

依赖

  • #34 基于 SPIFFE/SPIRE 的统一 Workload Identity 基础部署稳定后再推进
## 背景 laptop 内置 TPM 2.0 可以为宿主机提供不可轻易复制的硬件身份,并保护本地启动和磁盘密钥。当前 SPIRE 首要目标仍是完成基础上线;本议题属于后续增强,不应阻塞现有部署。 ## 目标 - 评估在 laptop 宿主机部署独立 SPIRE Agent,并使用 `tpm_devid` NodeAttestor - 设计 LDevID 的签发、provision、轮换和灾难恢复流程 - 评估 TPM 绑定的 LUKS2 自动解锁,以及 Secure Boot / measured boot / PCR 策略 - 为裸机 systemd 服务、基础设施 daemon 和其他非 Kubernetes workload 提供 SPIFFE 身份 - 明确 Kubernetes 内 SPIRE Agent 继续使用 `k8s_psat`,避免把集群节点身份强耦合到单台机器的 TPM ## 边界与原则 - OpenBao 继续承担集中式 secret、PKI、SSH CA 和动态凭据管理;TPM 不替代 OpenBao - 第一阶段不把 SPIRE trust domain 的唯一 CA/signing key 绑定到 laptop TPM - 在缺少多 TPM 节点、离线恢复和密钥备份方案前,不引入 TPM Server Attestor/Signer 作为生产信任根 - 必须保留磁盘离线恢复密钥,不能让主板或 TPM 故障导致数据不可恢复 ## 验证项 - [ ] 盘点 TPM 2.0、Secure Boot、固件和内核支持状态 - [ ] 验证 `/dev/tpmrm0` 与 TPM resource manager 可用性 - [ ] 制作 host SPIRE Agent 的最小 PoC - [ ] 验证 `tpm_devid` attestation、SVID 获取与轮换 - [ ] 记录 LDevID provision 与吊销流程 - [ ] 验证一个非 Kubernetes systemd workload 使用 Workload API - [ ] 设计重装系统、主板损坏、TPM clear 时的恢复流程 - [ ] 决定是否启用 TPM + LUKS2 + measured boot ## 依赖 - #34 基于 SPIFFE/SPIRE 的统一 Workload Identity 基础部署稳定后再推进
panxiao81 self-assigned this 2026-09-13 15:27:07 +00:00
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: panxiao81/homelab-infra#50