如何将SSH密钥添加到authorized_keys文件?

Modified on: Sat, 09 Jun 2018 17:24:53 +0800

我在Amazon EC2上有一个Ubuntu服务器,我用它进行开发,今天我愚蠢地清除了我的~/.ssh/authorized_keys文件中的所有内容。幸运的是我有一个SSH打开,所以我仍然连接,并可以修复该文件,但当我尝试将我的密钥文件恢复,它不起作用。我仍然从本地计算机上的服务器获得权限被拒绝。

authorized_keys具有权限600.我尝试使用ssh-rsa附加SSH密钥并关闭ssh-rsa。我也尝试将SSH密钥全部放到一行,但这也不起作用。

还有什么我需要做的事情,比如重新加载文件一些怎么样?

最佳答案

你应该从不保存文件,其内容以服务器上的-----BEGIN RSA PRIVATE KEY-----开头,就是你的< strong>私有键。相反,您必须将public键放入~/.ssh/authorized_keys文件中。

使用.pub生成时,public键具有ssh-keygen扩展名,其内容以ssh-rsa AAAAB3。 (二进制格式在此问题的答案中有所描述。)

服务器上~/.ssh的权限应该是700.文件~/.ssh/authorized_keys(在服务器上)应该有一个模式600.客户端(私人)密钥的权限应为600。

如果私钥没有受密码保护,并且您将其放在服务器上,我建议您生成一个新密码:

ssh-keygen -t rsa

如果您完全确定没有人可以从服务器恢复已删除的私钥,则可以跳过此步骤。

如果这没有用,请运行ssh,并提供更详细的选项:

ssh -vvv user@example.com

在服务器端,您可以查看/var/log/auth.log以获取详细信息。


相关问答

添加新评论