我从ssh收到以下错误:

Permissions 0777 for '/Users/username/.ssh/id_rsa' are too open.
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.

我应该授予id_rsa文件什么权限?


当前回答

700  folder
644  id_rsa.pub

这对我有用。

其他回答

我在玩Ansible时遇到了这个错误。为了解决这个问题,我已将私钥的权限更改为600。而且成功了!

chmod 600 .vagrant/machines/default/virtualbox/private_key

除了公认的答案之外,如果您已经完成了所有建议的方法,并且在windows上使用了“wsl”ubuntu,那么可以在ssh命令中附加“sudo”,例如

sudo ssh-i xxx.pemxxxx@xxxx.compute-1.amazonaws.com

对于Windows:

奇怪,但之前在这里描述的UI调整对我没有帮助。

但这解决了问题:

以管理员权限打开PowerShell使用您的密钥转到目录(使用cd命令)逐个输入命令

:

$path = ".\{your private key file name}" //for example "myKey"

然后键入以下命令删除显式权限:

icacls.exe $path /reset

然后将读取权限分配给当前用户:

icacls.exe $path /GRANT:R "$($env:USERNAME):(R)"

然后删除继承:

icacls.exe $path /inheritance:r

希望,会帮助某人

AFAIK值为:

700表示密钥文件所在的隐藏目录.ssh密钥文件id_rsa为600

AWS上Windows 10 ssh进入Ubuntu EC2“权限太开放”错误

我在尝试使用AWS的.pem文件ssh到Ubuntu EC2实例时遇到了这个问题。

在windows中,当我将此密钥放在.ssh文件夹下创建的文件夹中时,这就起作用了

C:\Users\USERNAME\.ssh\private_key

要在Windows 10中更改权限设置,请执行以下操作:

文件设置>安全>高级禁用继承将继承的权限转换为显式权限删除除管理员之外的所有权限项

然后可以安全连接。