为 Fuchsia 设备创建 SSH 密钥

如需与 Fuchsia 设备建立 SSH 连接,某些 ffx 命令(例如 ffx target showffx log)要求主机上具有 Fuchsia 专用的 SSH 密钥。

概念

在开发期间,一个或多个 SSH 公钥(列在 fuchsia_authorized_keys 中)会加载到 Fuchsia 设备,通常是在新的 Fuchsia 映像刷写到设备时。使用这些 SSH 公钥加载设备后,ffx 命令(从存储匹配的 SSH 私钥的主机运行)可以与设备建立 SSH 连接。

默认情况下,特定于 Fuchsia 的 SSH 密钥存储在主机的 $HOME/.ssh 目录中,如下所示:

$HOME/.ssh/fuchsia_ed25519
$HOME/.ssh/fuchsia_authorized_keys

如果这些文件不存在,则由 ffx 创建。

这些文件包含以下内容:

  • fuchsia_ed25519:SSH 私钥。不得显示或共享此文件的内容。
  • fuchsia_authorized_keys:一个或多个已获授权的 SSH 公钥的列表。

fuchsia_authorized_keys 文件必须包含 fuchsia_ed25519 的 SSH 公钥。在刷写过程中,fuchsia_authorized_keys 文件会从主机上传到 Fuchsia 设备。

如果您有多个开发机器,建议在开发机器之间同步 Fuchsia SSH 密钥。这可能需要您将现有的 Fuchsia SSH 密钥文件从一台机器复制到另一台机器。