帮助文档 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
帮助文档 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 云服务器 ECS
  4. 操作指南
  5. 实例
  6. 连接实例
  7. 使用第三方客户端工具连接实例
  8. 通过密钥认证登录Linux实例

通过密钥认证登录Linux实例

  • 使用第三方客户端工具连接实例
  • 发布于 2025-04-01
  • 0 次阅读
文档编辑
文档编辑

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

前提条件

  • 已创建密钥对并下载.pem私钥文件。具体操作,请参见创建SSH密钥对。

  • 实例处于运行中状态。

  • 已为实例绑定密钥对,具体操作,请参见绑定SSH密钥对。

  • 创建实例时分配了固定公网IP或为实例绑定了EIP,具体操作,请参见绑定ECS实例。

  • 已为实例所在的安全组添加安全组规则,并放行对相应端口(例如SSH协议默认的22端口)的访问。具体操作,请参见添加安全组规则。

    网络类型

    规则方向

    授权策略

    端口范围

    优先级

    授权对象

    专有网络VPC

    入方向

    允许

    SSH(22)

    1

    本地客户端公网IP地址(非ECS实例公网IP)。

    重要

    您也可以添加0.0.0.0/0,但存在安全风险,请谨慎使用。

    经典网络

    公网入方向

连接Linux实例

根据本地设备不同的环境,您可以通过不同的方式使用密钥远程连接Linux实例。

在Windows环境中使用密钥对

本节以PuTTYgen为例介绍如何将私钥文件格式从.pem转换为.ppk,并以PuTTY为例介绍如何使用密钥对连接Linux实例。

  1. 下载并安装PuTTYgen和PuTTY。

    下载链接如下:

    • PuTTYgen

    • PuTTY

  2. 将.pem私钥文件转换为.ppk私钥文件。

    1. 启动PuTTYgen。

      本示例中的PuTTYgen版本为0.71。

    2. 选择Type of key to generate为RSA,然后单击Load。

    3. 选择All Files(*.*)。

    4. 选择待转换的.pem私钥文件。

    5. 在弹出的对话框中,单击确定。

    6. 单击Save private key。

    7. 在弹出的对话框中,单击是。

    8. 指定.ppk私钥文件的名称,然后单击保存。

  3. 启动PuTTY。

  4. 配置用于身份验证的私钥文件。

    1. 选择Connection > SSH > Auth > Credentials。

    2. 在Private key file for authentication:区域,单击Browse…。

    3. 选择转换好的.ppk私钥文件。

  5. 配置连接Linux实例所需的信息。

    1. 单击Session。

    2. 在Host Name (or IP address)中输入登录账号和实例公网IP地址。

      格式为username@IP 地址,例如ecs-user@10.10.xx.xxx。

    3. 在Port中输入端口号22。

    4. 选择Connection type为SSH。

  6. 单击Open。

    当出现以下提示时,说明您已经成功地使用SSH密钥对登录了实例。windows_putty_5

以下示例演示如何转换私钥文件格式和使用SSH密钥连接Linux实例。动图

在支持SSH命令的环境中使用密钥对(通过命令配置信息)

本节介绍如何在支持SSH命令的环境(例如Linux、Windows下的MobaXterm)中通过命令配置所需信息,并通过SSH命令登录Linux实例。

  1. 找到.pem私钥文件在本地机上的存储路径,例如~/.ssh/ecs.pem。

    此处路径和文件名称仅为示例,在后续命令中请根据实际情况修改。

  2. 运行以下命令修改私钥文件的属性。

    chmod 400 [.pem私钥文件在本地机上的存储路径]

    示例如下:

    chmod 400 ~/.ssh/ecs.pem
  3. 运行以下命令连接至实例。

    ssh -i [.pem私钥文件在本地机上的存储路径] username@[公网IP地址]

    示例如下:

    ssh -i ~/.ssh/ecs.pem ecs-user@10.10.xx.xxx

在支持SSH命令的环境中使用密钥对(通过config文件配置信息)

本节介绍如何在支持SSH命令的环境(例如Linux、Windows下的MobaXterm)中通过命令配置所需信息,并通过SSH命令登录Linux实例。

  1. 找到.pem私钥文件在本地机上的存储路径,例如~/.ssh/ecs.pem。

    此处路径和文件名称仅为示例,在后续命令中请根据实际情况修改。

  2. 运行以下命令修改私钥文件的属性。

    chmod 400 [.pem私钥文件在本地机上的存储路径]

    示例如下:

    chmod 400 ~/.ssh/ecs.pem
  3. 运行以下命令,进入用户主目录下的.ssh目录,并创建config文件。

    cd ~/.ssh
    vim config
  4. 在config配置文件内,按i进入编辑模式,添加如下配置项。

    配置一台ECS实例的示例内容如下:

    # 输入ECS实例的别名,用户SSH远程连接。
    Host ecs
    # 输入ECS实例的公网IP地址。
    HostName 121.196.**.**
    # 输入端口号,默认为22。
    Port 22
    # 输入登录账号。
    User ecs-user
    # 输入.pem私钥文件在本机的地址。
    IdentityFile ~/.ssh/ecs.pem

    配置两台ECS实例的示例内容如下:

    # 输入ECS实例的别名,用户SSH远程连接。
    Host ecs1
    # 输入ECS实例的公网IP地址。
    HostName 121.196.**.**
    # 输入端口号,默认为22。
    Port 22
    # 输入登录账号。
    User ecs-user
    # 输入.pem私钥文件在本机的地址。
    IdentityFile ~/.ssh/ecs.pem
    
    # 输入ECS实例的别名,用户SSH远程连接。
    Host ecs2
    # 输入ECS实例的公网IP地址。
    HostName 121.196.**.**
    # 输入端口号,默认为22。
    Port 22
    # 输入登录账号。
    User ecs-user
    # 输入.pem私钥文件在本机的地址。
    IdentityFile ~/.ssh/ecs.pem

    添加完成后,按Esc键,并输入:wq保存config文件。

  5. 运行以下命令,重启SSH服务。

    警告

    若重启SSH服务失败,会存在SSH服务不可用风险,可能导致业务中断,建议您在非业务高峰期时执行该操作。

    service sshd restart
  6. 运行命令连接至实例。

    ssh [ECS实例的别名]

    示例如下:

    ssh ecs

常见问题

无法连接实例时,您可以自行排查。更多信息,请参见远程连接FAQ和GuestOS常见问题与修复方案。

相关文档

  • 如果您需要使用在Linux实例上自建的用户通过SSH密钥对登录实例,则您需要将~/.ssh/authorized_keys文件拷贝到该用户的.ssh目录下,才能登录Linux实例。具体操作,请参见自建用户通过SSH密钥对登录Linux实例。

  • 不支持在控制台为Windows实例绑定SSH密钥对,如需通过密钥认证登录Windows实例,您可以自行在实例内部开启SSHD的远程服务并配置密钥。具体操作,请参见通过密码或密钥认证登录Windows实例。

  • 如果您在绑定密钥对后希望使用密码方式登录实例,只需重置实例密码即可。重置密码后,您既可以使用密钥对方式,也可以使用密码方式登录实例。具体操作,请参见重置实例登录密码。

  • 如果您不想在本地使用SSH密钥对登录Linux实例,则您可以在ECS控制台上通过Workbench来登录Linux实例。具体操作,请参见通过密码或密钥认证登录Linux实例。

相关文章

在移动设备上连接Linux实例 2025-04-01 11:59

如果您需要随时随地对Linux实例进行管理和操作,则您可以在iOS、Android等移动设备上使用用户名密码验证的方式远程连接Linux实例进行操作。本文以在iOS设备中使用iTerminal和在Android设备中使用JuiceSSH连接Linux实例为例,为您介绍使用用户名密码验证的方式登录Li

在移动设备上连接Windows实例 2025-04-01 11:59

如果您需要随时随地管理和操作云端的 Windows 实例,可以在 Android 等移动设备上使用微软发布的Microsoft远程桌面(Remote Desktop)应用进行连接。本文将以 Microsoft 远程桌面为例,介绍如何在 Android 设备上连接 Windows 实例。 方案概览 在

通过密码认证登录Linux实例 2025-04-01 11:59

您可以在您本地的Windows、Linux、macOS、Android、iOS等环境中,使用用户名密码验证的方式远程连接Linux实例。 前提条件

通过密码认证登录Windows实例 2025-04-01 11:59

您可以在您本地的Windows、Linux、macOS环境中,使用用户名密码认证的方式远程连接Windows实例。本文介绍如何通过本地客户端连接Windows实例。 前提条件

通过密钥认证登录Linux实例 2025-04-01 11:59

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

目录
Copyright © 2025 your company All Rights Reserved. Powered by 博智数字服务平台.
闽ICP备08105208号-1