文档首页/ 弹性云服务器 ECS/ 最佳实践/ 选型与配置/ 自建用户通过SSH密钥对登录Linux实例
更新时间:2025-08-06 GMT+08:00

自建用户通过SSH密钥对登录Linux实例

背景介绍

SSH密钥对是一种安全便捷的登录认证方式,用于在SSH协议中进行身份验证和加密通信,由公钥和私钥组成且仅支持Linux实例,满足您对更高安全性、便利性和自动化能力的业务需求。您可以直接在Linux中使用SSH密钥对连接Linux。

前提条件

自建用户通过SSH密钥对登录Linux实例操作流程

  1. 选择合适的方式连接到Linux实例,登录方式请参见Linux ECS登录方式概述
  2. 创建自建用户。

    1. 执行以下命令,创建用户,<username>是您自建用户的用户名。
      sudo useradd -m <username>     
    2. 执行以下命令,查看用户是否添加成功。
      groups <username>

  3. 为自建用户设置密钥对。

    1. 准备密钥对。

      使用自备的密钥对,需要将id_rsa.pub(公钥)存储在Linux实例中,后续使用is_rsa(私钥)文件登录Linux实例。

      若没有密钥对,则执行以下命令,连续回车,生成一个长度为2048且加密方式为RSA的密钥对,会在当前路径下生成公钥id_rsa.pub结尾的文件和私钥is_rsa。

      ssh-keygen -t rsa -b 2048 -f "./id_rsa"
      图1 生成RSA密钥对
    2. 配置公钥到authorized_keys配置文件。

      将本机公钥的内容复制到实例对应用户根路径下的.ssh/authorized_keys文件中,可使用Xftp等文件传输工具完成文件上传操作。

      1. 执行以下命令,在用户目录下创建.ssh文件夹。
        sudo mkdir /home/<username>/.ssh
      2. 在步骤2.a目录下创建authorized_keys配置文件,并将步骤1中本地生成或提前准备好的公钥文件的内容复制到该配置文件中,可以通过vim编辑器完成文件修改和新建操作。
      3. 修改.ssh目录和authorized_keys文件的权限。
        sudo chmod 700 /home/<username>/.ssh
        sudo chmod 600 /home/<username>/.ssh/authorized_keys
      4. 使用vim命令进入/etc/ssh/sshd_config配置文件中,进入编辑模式将PubkeyAuthentication参数设置为yes,RSAAuthentication设置为yes。
        PubkeyAuthentication yes
        RSAAuthentication yes
      5. 执行以下命令,重启sshd服务,使配置生效。
        sudo systemctl restart sshd
    3. 使用自建用户,通过PuTTY或者Xshell远程登录到ECS实例上,登录方式参考通过SSH密钥方式登录Linux ECS,需要注意的是用户名为您自建的用户名。