SSH密钥

概述

SSH密钥:SSH密钥是一种安全的云主机登录认证方式,由一个公钥和一个私钥组成。仅Linux云主机支持通过SSH密钥登录。

功能特点

SSH密钥具有以下功能特点:
  • 安全性:SSH密钥登录采用非对称加密方式,能有效降低暴力破解风险。
  • 便捷性:SSH密钥登录时无需输入密码,登录端配置私钥后,可快捷登录目标云主机。
  • 使用限制:SSH密钥登录仅适用于Linux云主机root用户。

快速使用流程

用户可参考以下步骤快速使用SSH密钥:
  1. 生成SSH密钥对,并妥善保管自动下载的私钥。
  2. 将SSH公钥绑定到目标云主机。
  3. 将SSH私钥上传到登录端,并执行ssh -i ${private_key.pem} ${UserName}@${IpAddress}登录目标云主机。
Note: 登录命令中,${private_key.pem}指私钥文件路径,${UserName}指登录用户名,${IpAddress}指目标云主机的IP地址,例如:
ssh -i private_key.pem root@172.20.20.194
详情可参考典型使用流程

典型使用流程

使用SSH密钥登录云主机的典型使用流程如下:
  1. 创建SSH密钥对。
  2. 绑定SSH公钥到目标云主机。
  3. 上传SSH私钥到登录端。
  4. 从登录端登录目标云主机。
  1. 创建SSH密钥对。
    ZStack Cube 旗舰版主菜单,点击资源中心 > 云资源池 > 安全 > SSH密钥,进入SSH密钥界面。点击创建密钥,弹出创建密钥界面。可参考以下示例输入相应内容:
    • 名称:设置SSH密钥名称
    • 创建方式:选择密钥创建方式,此处选择生成新密钥对,系统将同时生成公钥和私钥,公钥将在云平台保存,私钥将自动下载到本地,文件名为${密钥名称}.pem
      Note: 如已在云平台外生成密钥对,可选择导入已有公钥,并将公钥粘贴到公钥内容

    点击确定,完成密钥创建。

    图 1所示:
    图 1. 创建SSH密钥


  2. 绑定SSH公钥到目标云主机。
    进入SSH密钥界面,找到第一步中创建的SSH密钥,点击操作 > 绑定云主机,选择目标云主机。该操作会将公钥绑定到云主机,并直接生效。
    Note:
    • 仅支持选择Linux云主机。
    • 请确保云主机处于运行中状态。
    • 请确保已为云主机安装Qemu Guest Agent (QGA),且QGA处于运行中状态。用户可通过安装云主机性能优化工具来安装QGA,也可以通过其他方式安装,如通过其他方式安装,请使用2.5或以上版本。
  3. 上传SSH私钥到登录端。
    创建SSH密钥时,会自动将私钥文件下载到本地电脑,如不使用该本地电脑登录云主机,请将SSH私钥文件上传到用于远程登录的实例。如直接使用该本地电脑登录,无需执行该步骤。
  4. 从登录端登录目标云主机
    从不同操作系统远程登录云主机的步骤有所差异,以下主要介绍Linux操作系统和Windows操作系统的远程登录步骤:
    • 登录端使用Linux操作系统时,直接在登录端中执行以下命令:
      # ssh -i ${private_key.pem} ${UserName}@${IpAddress}
      # 使用私钥登录目标云主机,其中,${private_key.pem}是私钥文件路径,${UserName}是登录用户名,${IpAddress}是目标云主机的IP地址
    • 登录端使用Windows操作系统时,请执行以下步骤:
      1. 在登录端中打开PoweShell命令行工具。
      2. 执行以下命令:
        # ssh -i ${private_key.pem} ${UserName}@${IpAddress}
        # 使用私钥登录目标云主机,其中,${private_key.pem}是私钥文件路径,${UserName}是登录用户名,${IpAddress}是目标云主机的IP地址
        Note: 目前,仅支持root用户使用SSH密钥登录目标云主机。

创建SSH密钥

ZStack Cube 旗舰版主菜单,点击资源中心 > 云资源池 > 安全 > SSH密钥,进入SSH密钥界面。点击创建密钥,弹出创建密钥界面。

可参考以下示例输入相应内容:
  • 名称:设置SSH密钥名称
  • 创建方式:选择SSH密钥创建方式,支持两种方式:生成新密钥对、导入已有公钥
    • 如选择生成新密钥对,系统将新生成一对SSH公钥和私钥。
      Note: 云平台仅保管公钥信息,私钥会在创建完成后自动下载到本地,用户需妥善保管此次下载的私钥文件,一旦遗失将无法找回。
    • 如选择导入已有公钥,用户可通过其他途径生成SSH密钥对,并将其中的公钥导入到云平台管理和使用,使用该方式请设置以下参数:

      公钥内容:将其他途径生成的SSH公钥粘贴到此处,支持以下加密方式:ssh-rsa、ssh-dss、ecdsa-sha2-nistp256、ssh-ed25519、ssh-ecdsa

图 2所示:
图 2. 创建SSH密钥


管理SSH密钥

ZStack Cube 旗舰版主菜单,点击资源中心 > 云资源池 > 安全 > SSH密钥,进入SSH密钥界面。

SSH密钥支持以下操作:
操作 描述
创建SSH密钥 生成或导入SSH密钥。
编辑SSH密钥 修改SSH密钥的名称和简介。
绑定云主机 将SSH公钥绑定到云主机,绑定后,用户可使用对应私钥免密登录云主机。一个SSH密钥可以绑定到多台云主机。
  • 云主机需满足以下条件:
    • 使用Linux操作系统。
    • 处于运行中状态。
    • 已安装Qemu Guest Agent(QGA),且QGA处于运行中状态。可通过性能优化工具为云主机安装QGA,如通过其他方式安装,需使用2.5及以上版本。
  • 目前,仅支持root用户使用绑定的SSH密钥登录。
解绑云主机 将SSH密钥从绑定的云主机解绑。
Note: 云主机需满足以下条件:
  • 云主机处于运行中状态。
  • 云主机已安装Qemu Guest Agent(QGA),且QGA处于运行中状态。可通过性能优化工具为云主机安装QGA,如通过其他方式安装,需使用2.5及以上版本。
删除SSH密钥 将SSH公钥信息从云平台删除。已绑定云主机的SSH密钥不支持删除,如需删除,需先解绑云主机。
用户手册 | 2.4.8.38 | 旗舰版 · HCI | ZStack 资源中心