大家好,我们是Raspberry Pi。

最近,我们对安全启动配置工具 rpi-sb-provisioner 进行了重大升级,使其能够更轻松地配置更复杂的操作系统镜像,并支持大规模部署 Raspberry Pi Connect。

我们一直安全启动(secure boot)的使用复杂程度远超应有水平。因此,在 2024 年,Raspberry Pi发布了 rpi-sb-provisioner 的第一个版本。

这是一个专门用于帮助用户在启用了安全启动和全磁盘加密的设备上,以稳定、可预测方式完成操作系统部署的系统。

自首次发布以来,我们收到了大量用户反馈,而这个配置工具也得到了显著发展——它已经从最初的一组 Shell 脚本和工具,演变成为一个包含制造数据库、审计日志以及 Web 用户界面的完整系统。

每一次改进,都是为了真正解决用户在实际使用过程中遇到的问题。

当然,打造基于 Raspberry Pi 的设备和项目,并不仅仅是将操作系统写入设备这么简单;我们还需要让 rpi-sb-provisioner 能够更好地与其他工具协同工作。


集成 Raspberry Pi Connect

用户持续反馈,Raspberry Pi Connect 在远程管理设备方面非常实用。

但是,当你需要批量配置大量设备时,就无法接受逐台手动关联设备的方式;同时,你也希望这些设备关联关系能够在操作系统更新、恢复出厂设置等操作之后依然保持有效。

rpi-sb-provisioner 2.3 版本 利用了 Raspberry Pi Connect for Organisations 中新增的设备身份支持功能,使你可以:

  • 自动为设备分配不可更改的唯一身份;
  • 将设备绑定到你的 Raspberry Pi Connect for Organisations 账户;
  • 在大规模生产部署过程中,无需人工逐台配置。

这意味着企业用户和设备制造商可以更加高效、安全地管理大量 Raspberry Pi 设备。


灵活的镜像描述配置

此前版本的 rpi-sb-provisioner 假设用户已经通过 pi-gen 创建了传统的 Raspberry Pi OS 派生镜像。

然而,在首次发布之后,我们收到了一系列用户需求:

  • 有用户希望配置更加复杂的系统分区结构;
  • 有用户希望采用更加灵活、更易维护的镜像构建方式。

为了解决这些需求,我们在 rpi-image-gen 中引入了 镜像描述配置(Image Description Provisioning,IDP) 功能,并将其集成到了 rpi-sb-provisioner 2.3 中。

镜像描述配置让 rpi-sb-provisioner 从一个功能固定的配置工具,升级成为一个完全可编程的部署系统。

用户现在可以定义:

  • 多种分区布局;
  • 不同分区类型;
  • 其他系统属性。

此外,IDP 不仅适用于由 rpi-image-gen 创建的操作系统镜像。

只要你能够描述一个系统镜像,就能够对其进行配置部署。

在生产环境部署之前,IDP 提供的扩展元数据还能帮助用户选择正确的镜像,并验证配置假设是否符合预期。


利用 rpi-fw-crypto 加强密钥保护

随着 rpi-fw-crypto 的发布,Raspberry Pi 设备现在具备了一种使用非对称加密技术的机制,同时避免过度暴露由 rpi-sb-provisioner 写入设备的、设备唯一的私钥。

我们主要在两个方面使用这一功能:

1. 在配置服务器端

用于:

  • 加密签名材料;
  • 将签名材料(例如 PEM 文件或 HSM PIN)绑定到指定配置服务器。

2. 在已配置设备端

用于生成完整磁盘加密密钥所需的数据。

这一过程可以通过:

  • 提供的启动前认证环境(pre-boot authentication environment);
  • 或者用户基于 rpi-image-gen 自行构建的认证环境;

来完成。

在 rpi-sb-provisioner 2.3 的安全启动密钥选择界面中,新增密钥信息显示功能,包括密钥哈希值和加密状态,帮助用户确认即将写入设备的密钥是否正确。


未来计划

rpi-sb-provisioner 将继续发展,以满足用户不断变化的需求。

无论是:

  • 分享你对工具使用体验的反馈;
  • 告诉我们哪些地方运行良好、哪些地方仍需改进;
  • 或分享大规模生产设备过程中积累的经验;

这些信息都将帮助我们持续优化系统,为不同类型的用户提供更好的支持,包括:

  • 工业用户;
  • 嵌入式设备开发者;
  • Raspberry Pi 爱好者。

如果你希望了解更多关于大规模部署 Raspberry Pi Connect 的信息,可以查看我们的批量部署文档。

rpi-sb-provisioner、rpi-fw-crypto 和 rpi-image-gen 均为开源项目,可通过 Raspberry Pi 软件资源页面获取。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐