使用密钥对登录 Linux 云主机

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 管理 Linux 云主机最简便的方法是使用密钥对登录,既安全,又省事。本文记录在 Mac OS 下使用密钥对登录 Linux 云主机的设置过程,同样也适用于多数 Linux 客户端。

管理 Linux 云主机最简便的方法是使用密钥对登录,既安全,又省事。本文记录在 Mac OS 下使用密钥对登录 Linux 云主机的设置过程,同样也适用于多数 Linux 客户端。

通过 ECS 控制台修改设置并获取云主机 IP 地址

购买阿里云主机后,点击 “管理控制台” » “我的资源” » “弹性计算” » “云服务器 ECS” 链接进入 ECS 控制台,通过 ECS 控制台可以执行更换操作系统、修改计算机名、重置密码等管理操作,并获取管理云主机所需的 IP 地址等信息。

更换操作系统

转到实例列表,找到需要管理的 ECS 实例,在最后一列,点击“更多”可以出现操作选择菜单:

image

图1. 操作选择菜单

通过“磁盘和镜像”下的“更换系统盘”可以更换操作系统。

注意更换操作系统的操作界面只有在 ECS 处于关闭状态才可进入。如果实例处于“运行中”的状态,可通过“实例状态”下的“停止”菜单关闭云主机。

修改计算机名(HostName)

默认的实例名称、HostName 和实例 ID 一致,但您肯定不喜欢在系统中看到一个很长但无意义的 ID。

通过“实例设置”下的“修改信息”功能可设置实例名称、HostName和实例描述。

密码

在完成使用密钥对登录的设置工作前,需要通过密码操控云主机。

如果不记得 root 密码,可通过“密码/密钥”下的“重置密码”先设置一个密码。root 密码可以在成功使用密钥对登录后删除。

获取云主机IP地址

从实例列表中可找到并复制需管理 ECS 实例的公网 IP。在本文的例子中为“39.105.106.107”。

检查安全组设置

对于新购买的 ECS, 安全组初始状态下允许接收来自外来 IP 对 TCP 22 端口(也就是 ssh 服务的默认监听端口)的访问,但如果安全组设置被修改,将可能造成后续的操作不能进行。

点击 ECS 实例后,在 “本实例安全组” 下可查看入方向的规则,在 “安全组列表” 中点击 “配置规则”可添加/删除/修改安全组规则。

在客户端生成密钥对并将公钥复制到 ECS

生成RSA密钥对

如果没有可用的密钥对,可以重新生成一对。

ssh-keygen

在此过程中会提示输入文件名,如果不使用默认的文件名,需要做好记录,在后面的配置中还会用到。

将密钥对中的公钥复制到 ECS

接下来将密钥对中的公钥复制到 ECS,记住是公钥。私钥一般保留在自己的计算机内就好,不用通过网络或移动介质传输。如果需要从新的客户端管理云主机,再生成一对密钥,将公钥复制到云主机即可。这种方式下,万一有某个客户端的私钥丢失或泄漏,只需要在云主机中删除对应的公钥,不影响其它客户端。

ssh-copy-id -i ~/.ssh/id_rsa.pub root@39.105.106.107

这个过程会提示输入密码,也就是在 ECS 控制台中设置的密码。

上面例子中的 ~/.ssh/id_rsa.pub 文件为刚刚生成的密钥对中的公钥,39.105.106.107 为 ECS 的公网 IP。

使用密钥对登录云主机

ssh root@39.105.106.107

如果不想每次都去查看 ECS 的公网 IP,或者没有使用默认的密钥文件名(~/.ssh/id_rsa~/.ssh/id_rsa.pub),那么还需要下面一步。

修改 config 文件

修改文件 ~/.ssh/config, 增加以下 5 行内容:

host aliyun1
  user root
  hostname 39.105.106.107  
  port 22
  identityfile ~/.ssh/rsa_for_aliyun_ecs

新增加的 5 行内容分别为:

  1. host
  2. 云主机 Linux 系统的用户名
  3. ECS 的公网 IP
  4. ssh 端口号
  5. 私钥文件在本机的地址

配置完成后登录就更简单了:

ssh aliyun1

其它操作环境

以上设置是在 Mac OS 下通过密钥对登录 Linux 云主机,也适用于多数 Linux 客户端。

如果您的使用环境不同,或者需要更详细的讲解,可浏览 ECS 控制台操作指南中的相关文档:

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 显示当前登录到系统的用户信息 who命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示当前登录到系统的用户信息 who命令 使用指南
146 45
|
2月前
|
Unix Shell Linux
【Shell 命令集合 系统管理 】Linux 显示当前登录用户的登录名 logname命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示当前登录用户的登录名 logname命令 使用指南
30 0
|
1月前
|
Linux 网络安全
linux免密登录报错 Bad owner or permissions on /etc/ssh/ssh_config.d/05-redhat.conf
linux免密登录报错 Bad owner or permissions on /etc/ssh/ssh_config.d/05-redhat.conf
34 1
|
18天前
|
安全 Unix Linux
基于MobaXterm工具的Linux远程SSH登录
本文介绍了如何使用 MobaXterm 进行 Linux 远程登录。首先,从官方网站下载并安装 MobaXterm。启动后,创建新的远程会话,选择 SSH 类型,输入服务器 IP、主机名和端口。接着,提供用户名和密码进行连接。成功后,即可使用远程终端执行命令。此外,文章还提到了其他常用的 Linux 远程登录工具,如 PuTTY、OpenSSH、SecureCRT 和 Xshell,强调了选择工具时应考虑个人偏好和安全需求。
|
18天前
|
Ubuntu Linux Shell
linux免交互登陆远程主机并执行命令(密钥对和Expect)
linux免交互登陆远程主机并执行命令(密钥对和Expect)
|
1月前
|
Linux 网络安全 数据安全/隐私保护
linux免密登录最简单--图文详解
linux免密登录最简单--图文详解
22 2
|
1月前
|
Linux
linux centos7查看linux的登录日志
linux centos7查看linux的登录日志
32 2
linux centos7查看linux的登录日志
|
1月前
|
监控 Linux Shell
Linux脚本的作用是监控IP登录失败次数
Linux脚本的作用是监控IP登录失败次数
14 1
|
2月前
|
存储 Shell Linux
【Shell 命令集合 系统管理 】Linux 显示当前登录用户的用户 whoami命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示当前登录用户的用户 whoami命令 使用指南
53 1
|
2月前
|
存储 安全 Unix
【Shell 命令集合 系统管理 】Linux 显示当前系统上已登录用户的信息 rwho命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示当前系统上已登录用户的信息 rwho命令 使用指南
36 0
【Shell 命令集合 系统管理 】Linux 显示当前系统上已登录用户的信息 rwho命令 使用指南