如果在首次启动后丢失了 SSH 密钥对,该如何连接到 Amazon EC2 实例?

我想连接到我的 Amazon Elastic Compute Cloud (Amazon EC2) 实例,但是丢失了 SSH 密钥对。如何连接到实例?

解决方法

重要提示:

方法 1、2 和 3 需要停止并启动实例。但应注意以下几点:

方法 1:输入用户数据

1.    创建新密钥对

2.    如果您在 Amazon EC2 控制台中创建私钥,则在公钥中检索密钥对

3.    打开 Amazon EC2 控制台

4.    停止您的实例

5.    依次选择 Actions(操作)、Instance settings(实例设置)、Edit user data(编辑用户数据)。

6.    将下列脚本复制到编辑用户数据对话框中:

Content-Type: multipart/mixed; boundary="//"
MIME-Version: 1.0

--//
Content-Type: text/cloud-config; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="cloud-config.txt"

#cloud-config
cloud_final_modules:
- [users-groups, once]
users:
  - name: username
    ssh-authorized-keys: 
    - PublicKeypair

将 username 替换为您的用户名,如 ec2-user。您可以输入默认用户名,或者如果先前已为该实例设置了自定义用户名,则输入此用户名。有关默认用户名的列表,请参阅连接到实例的一般先决条件

将 PublicKeypair 替换为第 2 步中检索到的公钥。确保输入以 ssh-rsa 开头的完整公钥。

7.    选择 Save(保存)。

8.    启动您的实例

9.    cloud-init 阶段完成后,请验证公钥是否已被替换

重要提示:由于脚本包含密钥对,请删除用户数据字段中的脚本。

10.    停止您的实例

11.    依次选择 Actions(操作)、Instance Settings(实例设置)、Edit user data(编辑用户数据)。

12.    删除Edit user data(编辑用户数据)对话框中的所有文本,然后选择 Save(保存)。

13.    启动您的实例

 

https://aws.amazon.com/cn/premiumsupport/knowledge-center/user-data-replace-key-pair-ec2/

posted @   Oops!#  阅读(732)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
历史上的今天:
2020-12-06 【Ansible学习】- 常用文件操作模块之lineinfile模块
2018-12-06 用dockerfile构建基于centos系统的jar包的镜像
2017-12-06 CentOS 7 安装mysql
点击右上角即可分享
微信分享提示