ssh-add错误:"权限过于开放"

6
当我尝试加载我的密钥时,出现了这个错误。
ssh-add ~/.ssh
Permissions 0755 for '/home/starkers/.ssh' are too open.

请注意,.ssh目录的权限过于开放,而不是实际密钥。
修改所有权不会改变任何东西:
chmod 755 ~/.ssh
ssh-add ~/.ssh
Permissions 0755 for '/home/starkers/.ssh' are too open.

事情是这样的,当我创建新的密钥时,需要写入到这个目录,那么它在说什么?

只是一个小提示,chmod 不会修改所有权(那是 chown)。 - Burhan Khalid
1
可能是ssh“权限太开放”错误的重复问题。 - Burhan Khalid
这不是实际密钥,而是 .ssh 目录权限过于开放。请注意。 - Starkers
这是同样的问题;你的目录权限不正确。它应该是“700”;我不确定为什么你那里是“755”。 - Burhan Khalid
1
如果是600,当生成新密钥时我无法写入目录。那么想法是在生成密钥后锁定目录吗?我在本地机器上没有遇到过这种情况,但这确实有道理。 - Starkers
显示剩余3条评论
2个回答

19
您的.ssh目录应具有0700权限,不应为0600(过于严格)或0755(过于宽松)。请执行以下命令:chmod -R 700 ~/.ssh。使用-R选项可以递归更改该目录中所有文件的权限。

0

除了您自己,没有人应该能够接触到您的钥匙,甚至不能读取它们或发现它们的名称。这是基本的明智安全措施,这意味着对于组或世界而言,没有任何权限。

首先,您应该拥有该目录。然后,您应该使用类似600或700(最好是后者,请参见下文)的内容。

ssh手册中得知(但是是我的斜体字):

~/.ssh/

此目录是所有特定用户配置和身份验证信息的默认位置。没有一般要求将此目录的全部内容保密,但建议权限为“读/写/执行”仅限用户访问。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接