您可以使用打开的会话和密钥恢复 AWS EC2 上的 ~/.ssh 内容吗?

Ota*_*our 3 linux ssh amazon-web-services ssh-keys amazon-ec2

我在 Ubuntu 上使用 AWS EC2。我不小心删除了 的内容,~/.ssh但仍然打开了我的会话,并且仍然.pem在我的 PC 上备份了我的和公钥。有没有办法恢复我的~/.ssh内容?我尝试复制我的公钥,将其粘贴到我的实例上的同名文件中并输入。

cat my-key.pkk >> authorized_keys 
Run Code Online (Sandbox Code Playgroud)

但是我无法使用 PuTTY 打开另一个会话。

Mar*_*ryl 6

你无法恢复它。

但是只要您打开会话,您就可以authorized_keys以相同的方式重新创建,您将在正常的 *nix 系统上首次创建它。

  • 创建~/.ssh文件夹,并将其权限设置为700

    mkdir ~/.ssh
    chmod 700 ~/.ssh 
    
    Run Code Online (Sandbox Code Playgroud)
  • 在本地 Windows 机器上运行 PuTTYgen,将您的密钥对(.pem.ppk)加载到其中,将要粘贴到 OpenSSH 授权密钥文件框中的公钥内容复制到剪贴板;

  • 输入cat > ~/.ssh/authorized_keys您的 PuTTY 终端;
  • 右键单击终端窗口以粘贴从 PuTTYgen 复制的行;
  • EnterCtrl+C;
  • 设置权限~/.ssh/authorized_keys600

    chmod 600 ~/.ssh/authorized_keys
    
    Run Code Online (Sandbox Code Playgroud)

现在您应该能够使用您的私钥对新会话进行身份验证。

另请参阅设置 SSH 公钥身份验证指南