我错误地从我的aws实例中删除了.ssh文件夹,现在我无法将其删除。问题是节点在我的prod环境中,我不想重新启动它。我找到了以下解决方案 -
Amazon AWS EC2 Deleted Key Locked out of Root
但是它表明我需要将我的磁盘连接到另一个实例,这将导致节点关闭,但仍然无法保证解决方案。在我可以使用的aws控制台上是否有任何解决方案。任何帮助将不胜感激。
答案 0 :(得分:3)
没有解决方案不涉及使用与实例分离的EBS卷。
也许您可以启动此实例的副本,修复它,然后将弹性IP地址移动到固定实例,停机时间最短?
答案 1 :(得分:1)
这是一个古老的问题,但是如果有人在这里想知道这个问题,可以按照AWS Knowledge Base的步骤进行快速而相对轻松的修复。
基本细节如下:
ssh-keygen -yf <KEY-FILE>.pem
以获取公钥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-REPLACE
ssh-authorized-keys:
- PUBLIC-KEY-PAIR-REPLACE
将 USERNAME-REPLACE 替换为实例用户名(例如:ubuntu,ec2-user等)
用在步骤2中打印的内容(包括
ssh-rsa
部分)替换 PUBLIC-KEY-PAIR-REPLACE 。