我从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文件什么权限?


当前回答

正如人们所说的,在Windows中,我只是将.pem文件放在C:\Users\[user]\.ssh\中,这就解决了问题。尽管您可以在bash或powershell提示符下执行chmod和其他命令行选项,但这些选项都不起作用。我没有改变rsa或其他任何东西。然后,在运行连接时,必须将pem文件的路径放在.ssh文件夹中:

ssh -i "C:\Users\[user]\.ssh\ubuntukp01.pem" ubuntu@ec[ipaddress].us-west-2.compute.amazonaws.com

其他回答

0600是我的设定值(并且正在工作)

我用sudo成功了

sudo chmod 400 pem-file.pem
sudo ssh -i pem-file.pem username@X.X.X.X

在连接到AWS实例时,我在Windows上的WSL上遇到了这个问题。通过切换到经典的命令提示符,我的问题得到了解决。您可以尝试切换到不同的终端接口,看看这是否有帮助。

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

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

在Windows 8.1中使用Cygwin时,需要运行以下命令:

chgrp Users ~/.ssh/id_rsa

然后可以应用此处发布的解决方案,400或600即可。

chmod 600 ~/.ssh/id_rsa

此处引用