在 AIStudio 镜像中心使用 Dockerfile 自助构建最新版 vLLM 镜像在 AIStudio 镜像中心使用 Dockerfile 自助构建最新版 vLLM 镜像 ,无需访问 DockerHub立即构建
Skip to content

SSH 公钥管理

智算云平台提供便捷的平台级 SSH 公钥管理功能,您只需一次上传自己的 SSH 公钥,平台将自动在 AIStudio 开发机和 AICoder 中注入该公钥,确保您的 SSH 公钥一处上传,处处可用,极大简化了密钥管理流程,提升了使用效率。

适用服务范围

SSH 公钥管理适用于智算云平台以下服务:

  • 远程登录一站式 AI 平台(AIStudio)的开发机
  • 远程登录 AICoder

需要特别说明的是,SSH 公钥的注入是全局且无差别的。一旦上传,该公钥将被自动注入到您账号下所有的 AIStudio 开发机和 AICoder 实例中。平台不支持针对特定实例类型(例如仅注入开发机而不注入 AICoder)或特定单个实例进行选择性注入。

生成 SSH 公钥

智算云平台不负责生成 SSH 密钥对。您需要在本地自行生成。Linux/macOS 用户以及 Windows 10/11 用户通常可以使用终端中的 ssh-keygen 命令生成;Windows 用户也可以使用 PuTTYgen 等第三方工具生成。

注意

基于 SSH 公私钥对的验证允许用户通过一对加密密钥实现无密码登录,提升了远程服务器管理的安全性和便捷性。关于 SSH 原理的深入介绍,建议参考阮一峰的 SSH 教程

上传 SSH 公钥

SSH 公钥管理页面列出了当前用户的所有 SSH 公钥。

alt text

注意

  • 新增的 SSH 公钥将在下一次开发机/AICoder 重启时生效。

验证 SSH 公钥

如果您是第一次配置 SSH 公钥,可能会觉得这个过程有些抽象。为了让您更直观地确认配置已生效,我们可以登录到实例中,亲眼看到平台为您注入的公钥。这不仅能验证配置成功,也能帮助您理解平台是如何管理这些密钥的。

以下步骤适用于开发机与 AICoder。

  1. 新建一台开发机,或重启(关闭重开)一台开发机。如果使用 AICoder 验证,请在打开 AICoder Shell 窗口后,手动点击左上角的「一键重启」图标。

  2. 检查 ~/.ssh/authorized_keys 文件来验证公钥是否已成功注入。

    shell
    cat ~/.ssh/authorized_keys

    平台注入的公钥会被包含在 #### PLATFORM-MANAGED KEYS BEGIN ######## PLATFORM-MANAGED KEYS END #### 标记之间。

    shell
    root@aic-c7wrplj4qfj54bs4-aicoder-0:~# cat .ssh/authorized_keys
    #### PLATFORM-MANAGED KEYS BEGIN ####
    #### 如手动添加公钥,请勿写入此区域内 ####
    ssh-ed25519 AAAAC3NzaC1lZDI1NTE5BBBBIJdlUKh/Wy2SlZ3tpNxqd9dN0t+gU/VyaOoGuVRcS9eD janedoe@infini-ai.com
    #### PLATFORM-MANAGED KEYS END ####
    # 以下是手动添加的 SSH 公钥
    ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJdlUKh/Ax3YlZ3tpNeqd9dN0t+gU/VyaOoGuVRcS9eD janedoe@infini-ai.com
    root@aic-c7wrplj4qfj54bs4-aicoder-0:~#

删除 SSH 公钥

删除操作会从 SSH 公钥管理中移除该 SSH 公钥,但是无法影响运行中的开发机/AICoder 示例。从 SSH 公钥管理页面删除的 SSH 公钥将在下一次开发机/AICoder 重启时移除。

常见问题

我还能手动添加、管理 SSH 公钥吗?

可以。

虽然平台提供了自动化的 SSH 公钥注入功能,但您仍然保留对实例内 ~/.ssh/authorized_keys 文件的完全控制权。

  • 手动添加:您可以像在普通 Linux 服务器上一样,手动将公钥追加到 ~/.ssh/authorized_keys 文件中。需要注意的是,手动添加的公钥仅对当前实例生效,不会像平台托管密钥那样自动同步到您账号下的所有实例。
  • 共存机制:平台注入的公钥位于 #### PLATFORM-MANAGED KEYS BEGIN ######## PLATFORM-MANAGED KEYS END #### 标记之间。
  • 注意事项:为了避免冲突,请不要修改或删除平台标记区域内的内容。该区域的内容会在实例重启时被平台重置。请将您手动管理的公钥放在这些标记之外(例如文件的末尾)。
shell
root@aic-c7wrplj4qfj54bs4-aicoder-0:~# cat .ssh/authorized_keys
#### PLATFORM-MANAGED KEYS BEGIN ####
#### 如手动添加公钥,请勿写入此区域内 ####
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5BBBBIJdlUKh/Wy2SlZ3tpNxqd9dN0t+gU/VyaOoGuVRcS9eD janedoe@infini-ai.com
#### PLATFORM-MANAGED KEYS END ####
# 以下是手动添加的 SSH 公钥
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJdlUKh/Ax3YlZ3tpNeqd9dN0t+gU/VyaOoGuVRcS9eD janedoe@infini-ai.com
root@aic-c7wrplj4qfj54bs4-aicoder-0:~#

为什么关闭 AICoder 后 SSH 公钥仍未注入/生效?

关闭 AICoder Shell 页面并不会将 AICoder 实例关机。您需要手动点击 AICoder Shell 窗口左上角的「一键重启」图标,手动重启 AICoder 实例,使平台注入的 SSH 公钥生效。