更新时间:2025-06-20 GMT+08:00
分享

创建密钥对

为安全起见,用户登录弹性云服务器时建议使用密钥对方式进行身份认证。用户可以新建一个密钥对,在登录弹性云服务器时进行鉴权。

如果用户已有密钥对,可重复使用,无需多次创建。

创建密钥对的方式

创建密钥对的方式如表1所示。

表1 创建密钥对的方式

创建密钥对的方式

区别

通过管理控制台创建密钥对

说明:
  • 账号密钥对
    • 首次创建时,需要具有Tenant Administrator系统角色的用户才能创建。
    • 账号密钥对可以由本账号下的多个IAM用户使用。
  • 私有密钥对:IAM用户通过管理控制台创建的私有密钥对,仅能自己使用。如果多个IAM用户需要使用相同的密钥对,可以将私有密钥对升级为账号密钥对,详见将私有密钥对升级为账号密钥对
  • 公钥保存在华为云中,私钥可以由用户下载保存在本地,也可以将私钥托管在华为云中,由华为云统一管理。华为云采用KMS提供的加密密钥对私钥进行加密,确保托管私钥的安全存储与访问。
  • 通过管理控制台创建的密钥对支持的加解密算法为:
    • SSH-ED25519
    • ECDSA-SHA2-NISTP256
    • ECDSA-SHA2-NISTP384
    • ECDSA-SHA2-NISTP521
    • SSH_RSA有效长度为:2048,3072,4096

通过PuTTYgen工具创建密钥对

说明:

PuTTYgen是一款公钥私钥生成工具,获取路径:https://www.putty.org/

公钥和私钥均保存在用户本地。

导入密钥对

说明:

如果多个IAM用户需要使用相同的密钥对时,用户可以先通过其他工具(例如,PuTTYgen工具)创建密钥对,然后分别在两个IAM用户的资源中导入您创建的密钥对。

  • 通过外部导入的SSH密钥对支持的加解密算法为:
    • SSH-DSS(不推荐)
    • SSH-ED25519
    • ECDSA-SHA2-NISTP256
    • ECDSA-SHA2-NISTP384
    • ECDSA-SHA2-NISTP521
    • SSH_RSA有效长度为:2048,3072,4096
  • 导入的私钥支持PKCS8格式,如果使用PKCS1格式则需要进行转换。

创建密钥对

KPS支持三种方式创建密钥对,可根据需要进行选择:

  1. 登录管理控制台
  2. 单击管理控制台左上角的,选择区域或项目。
  3. 单击页面左上方的,选择安全与合规 > 数据加密服务
  4. 在左侧导航树中,选择“密钥对管理”,进入“密钥对管理”页面。
  5. 默认进入“账号密钥对”页签,根据用户使用需求,自主选择创建私有密钥对或者账号密钥对。
  6. 单击“创建密钥对”,进入“创建密钥对”页面,输入密钥对名称,如图1所示。

    图1 创建密钥对


  7. (可选)选择“密钥对类型”

    • 创建私有密钥对时,必须保证该账号下已有账号密钥对(创建的账号密钥对或私有密钥对升级的账号密钥对),该参数才会生效。否则,该参数无效,默认只会创建SSH_RSA_2028的密钥对。
    • 当前仅RSA算法支持windows系统。

  8. 如果需要托管私钥,请阅读并勾选“我同意将密钥对私钥托管”。在“KMS加密”中选择加密密钥。如果不需要托管私钥,请跳过此步骤。

    • “列表选择”:适用于使用本账号的密钥或共享密钥的场景。
      • “默认密钥”:KPS采用KMS提供的加密密钥对私钥进行加密,KMS为KPS提供的默认密钥为“kps/default”
      • “自定义密钥”:您也可以通过KMS平台创建自定义密钥来对私钥加密,具体操作请参见创建密钥。如果想使用RAM创建的共享密钥,确认接受共享后,可以在KMS加密的下拉框最下方选择共享密钥,密钥名称后会显示来自共享。
    • “手工输入”:适用于使用授权的密钥场景,仅支持对称算法密钥ID,请勿输入非对称算法密钥ID。创建授权后,用户可以通过切换手工输入方式,输入密钥ID后使用被授权密钥加密。授权密钥操作可参见创建授权
    图2 托管私钥

  9. 请阅读《密钥对管理服务免责声明》并勾选“我已阅读并同意《密钥对管理服务免责声明》”
  10. 单击“确定”,浏览器自动执行下载任务,私钥文件将自动下载到本地。

    • 如果用户没有进行私钥托管,为保证安全,私钥只能下载一次,请妥善保管。如果不慎遗失,您可以通过重置密码或重置密钥对的方式,重新给弹性云服务器绑定密钥对,具体可参照解绑密钥对后用户无法登录ECS时如何处理?进行处理。
    • 如果用户已授权华为云托管私钥,可根据需要将托管的私钥导出使用。

  1. 生成公钥和私钥文件,双击“PUTTYGEN.exe”,打开“PuTTY Key Generator”。如图3所示。

    图3 PuTTY Key Generator

  2. 请根据表2设置参数。

    表2 生成密钥对参数说明

    参数

    参数说明

    Type of key to generate

    当前导入管理控制台的密钥对的加解密算法,仅支持“SSH-2 RSA”

    Number of bits in a generated key

    当前支持导入管理控制台的密钥对的算法长度为:1024、2048、4096。

  3. 单击“Generate”,生成一个公钥和一个私钥,如图4所示。

    蓝框中标记的内容为生成的公钥内容。
    图4 生成公钥和私钥文件

  4. 复制蓝框中的公钥内容,并将其粘贴在文本文档中,以“.txt”格式保存在本地。

    请勿直接单击“Save public key”保存公钥文件。如果用户使用“Save public key”保存公钥,公钥内容的格式会发生变化,不能直接导入管理控制台使用。

  5. 根据以下方式,选择保存私钥的格式,可保存为“.ppk”或者“.pem”格式的私钥。

    为保证安全,私钥只能下载一次,请妥善保管。

    表3 私钥文件格式

    私钥文件格式

    私钥使用场景

    保存方法

    “.pem”格式

    • 使用Xshell工具登录Linux操作系统云服务器
    • 将私钥托管在管理控制台
    1. 选择Conversions > Export OpenSSH key
    2. 保存私钥到本地。例如:kp-123.pem。

    获取Windows操作系统云服务器的密码

    1. 选择Conversions > Export OpenSSH key
      说明:

      请勿填写“Key passphrase”信息,否则会导致获取密码失败。

    2. 保存私钥到本地。例如:kp-123.pem。

    “.ppk”

    使用PuTTY工具登录Linux操作系统云服务器

    1. “PuTTY Key Generator”界面,选择File > Save private key
    2. 保存私钥到本地。例如:kp-123.ppk。

    根据需要正确保存公钥和私钥文件后,可将密钥对导入管理控制台使用。

确保已有IAM用户下没有相同名称的私有密钥对,如果已经创建了相同名称的私有密钥对,导入账号密钥对时会提示密钥对名称已存在。导入的私钥支持PKCS8格式,如果使用PKCS1格式则需要进行转换。

  1. 登录管理控制台
  2. 单击管理控制台左上角的,选择区域或项目。
  3. 单击页面左上方的,选择安全与合规 > 数据加密服务
  4. 在左侧导航树中,选择“密钥对管理”,进入“密钥对管理”页面。
  5. 默认进入“账号密钥对”页签,根据用户使用需求,自主选择导入私有密钥对或者账号密钥对。
  6. 单击“导入密钥对”,在弹出“导入密钥对”对话框中,单击“导入公钥”,导入公钥文件,如图5所示。

    图5 导入密钥对

    • 当前支持批量导入,最多一次支持导入10个公钥。
    • 用户可自定义导入密钥对的名称。
    • 如果提示名称已存在,是由于其他IAM用户创建了同名的私有密钥对,需修改密钥对名称。

  7. 如果需要托管私钥,请确认并勾选“我同意将密钥对私钥托管”,如图 托管私钥所示。如果不需要托管私钥,请跳过此步骤。

    图6 托管私钥

    1. 将私钥内容复制并粘贴至“私钥内容”文本框中。
    2. “KMS加密”下拉列表中选择加密密钥。
      • “列表选择”:适用于使用本账号的密钥或共享密钥的场景。
        • “默认密钥”:KPS采用KMS提供的加密密钥对私钥进行加密,KMS为KPS提供的默认密钥为“kps/default”
        • “自定义密钥”:您也可以通过KMS平台创建自定义密钥来对私钥加密,具体操作请参见创建密钥。如果想使用RAM创建的共享密钥,确认接受共享后,可以在KMS加密的下拉框最下方选择共享密钥,密钥名称后会显示来自共享。
      • “手工输入”:适用于使用授权的密钥场景,仅支持对称算法密钥ID,请勿输入非对称算法密钥ID。创建授权后,用户可以通过切换手工输入方式,输入密钥ID后使用被授权密钥加密。授权密钥操作可参见创建授权

  8. 请阅读《密钥对管理服务免责声明》后,勾选“我已阅读并同意《密钥对管理服务免责声明》”
  9. 单击“确定”,导入密钥对。

删除密钥对

如果创建或导入的密钥对不再使用时,可以删除密钥对。

  • 执行删除操作后,密钥对将被彻底删除,不可恢复,请谨慎操作。
  • 如果用户已导入私钥,执行删除操作时,会将该私钥一起删除。
  • 如果用户删除控制台上已配置到弹性云服务器的公钥,而用户本地已保存私钥,用户可正常使用私钥登录弹性云服务器,删除操作对弹性云服务器的登录没有任何影响。
  1. 在左侧导航树中,选择“密钥对管理”,进入“密钥对管理”页面。
  2. 在目标密钥对所在行,单击“删除”

    如果您已经将密钥对升级为账号密钥对,请在“账号密钥对”列表中,执行以下操作。

  3. 如果未开启删除验证,在确认删除提示框中输入“DELETE”后,单击“确定”,完成删除操作。

    如果开启删除验证,选择验证方式后,单击“获取验证码”,在验证码对话框中输入获取的验证码,单击“确定”,完成删除操作。

    如果需要关闭操作保护,可以在账号的安全设置 > 敏感操作中关闭。也可以单击删除页面的“关闭操作保护”

相关文档