还在用密码登录 ECS?ECS 控制台更安全的 SSH 密钥对 来了

什么是 SSH 密钥对

  • SSH 密钥对是通过一种加密算法生成的一对密钥:一个对外界公开,称为“公钥”;另一个自己保留,称为“私钥”。
  • 如果已经将公钥配置在 Linux 实例中,那么,在本地或者另外一个实例中,可以使用私钥通过 SSH 命令或相关工具登录实例,而不需要输入密码。

前置条件

  • ECS 实例为 IO 优化实例
  • ECS 实例的操作系统类型为 Linux
  • ECS 实例有公网 IP
  • 本文适用于本地环境为 Mac/Linux 环境

步骤:

  • 步骤 1. 创建 密钥对

我们可以在 【ECS控制台】 -> 【网络和安全组-密钥对】 -> 【创建密钥对】,点击 【确定】创建后系统会生成私钥,我们保存该私钥即可 如下图:


还在用密码登录 ECS?ECS 控制台更安全的 SSH 密钥对 来了



  • 步骤 2. 创建 ECS

选择 IO 优化实例、操作系统为 Linux,页面下方的 安全设置 模块会出现选择 密钥对 的选项,如下图:


还在用密码登录 ECS?ECS 控制台更安全的 SSH 密钥对 来了



  • 步骤 3. 通过 SSH 密钥对 登录云服务器

ssh -i ~/Desktop/testKeyPair.pem root@xx.xx.xx.xx

说明:


- -i 后面的参数为 步骤1 所下载的私钥,我将其放在了桌面上。
- 阿里云创建的ECS,Linux系统默认登录名是root
- xx.xx.xx.xx为我们刚才创建的ECS的公网IP地址

运行该命令后可能会报 Permissions 0644 for 'testKeyPair.pem' are too open. 错误,提示我们文件权限过大,我们需要将私钥文件权限改成600,即运行chmod 600 ~/Desktop/testKeyPair.pem 命令。之后重连即可正常登陆了。如下图:


还在用密码登录 ECS?ECS 控制台更安全的 SSH 密钥对 来了




可能遇到的问题:

  • ECS 的安全组 22 端口未开启,我们可以在
    ECS控制台 -> 实例 -> 管理 -> 本实例安全组 -> 配置规则 界面 查看/配置 安全组规则,配置下 22 端口即可。

ECS 控制台 密钥对 其他功能

  • 导入已有公钥
  • 对已有实例进行 绑定/解绑 密钥对
上一篇:阿里云ecs使用体验


下一篇:Java中常用的查找算法——顺序查找和二分查找