我从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文件什么权限?
我从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上使用WSL
最简单的答案是键入:sudo ssh-i keyfile.pem<user>@ip
而不更改文件权限。发生这种情况的原因是什么?另一种资源
您不能修改Windows文件系统上文件的权限在Windows上的Ubuntu上使用chmod on Bash。您必须复制WSL主目录(~)的私钥,并在那里执行。
另一方面,sudo不应与ssh一起使用。使用sudo发出命令之所以有效,是因为它现在很可能以root身份执行,而这不是正确的方式,并且存在巨大的安全风险,因为允许使用600/400权限以外的任何权限都会破坏使用SSH密钥的目的,从而危及密钥的安全性。
最好的方法是将文件复制到$HOME/.ssh:
cp密钥文件.pem~/.ssh
对其执行sudo chmod 400 keyfile.pem。
然后ssh-i keyfile.pem<user>@ip。
其他回答
对于我(使用Windows的Ubuntu子系统),错误消息更改为:
Permissions 0555 for 'key.pem' are too open
在使用chmod 400之后。事实证明,使用root作为默认用户是原因。
使用cmd:
ubuntu config --default-user your_username
提供400许可,执行以下命令
chmod 400 /Users/username/.ssh/id_rsa
我在EC2上使用VPC,并收到相同的错误消息。我注意到我在使用公共DNS。我把它改成了专用DNS和vola!!它奏效了。。。
我从另一台mac迁移后也遇到了同样的问题。它被我的钥匙阻止连接github。
我重置了如下权限,现在运行良好。
chmod 700 ~/.ssh # (drwx------)
cd ~/.ssh
chmod 644 *.pub # (-rw-r--r--)
chmod 600 id_rsa # (-rw-------)
0600是我的设定值(并且正在工作)