ssh“权限太开放”错误

我的Mac出现问题,无法再在磁盘上保存任何类型的文件。 我必须重新启动OSX Lion并重置文件和ACL的权限。

但是现在当我要提交存储库时,我从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文件什么权限级别?


#1楼

密钥的“ 0x00”权限要求有一个例外。 如果该密钥由root拥有,并且由其中具有用户的组所拥有,则该密钥可以为“ 0440”,并且该组中的任何用户都可以使用该密钥。

我相信这可以在“ 0xx0”集中的任何权限下使用,但我尚未测试每个版本的每种组合。 我已经在CentOS 6上用5.3p1-84尝试了0660,该组不是用户的主要组,而是次要组,并且工作正常。

在您不希望应用程序弄乱密钥的情况下,通常不会对某人的个人密钥执行此操作,而是对用于自动化的密钥执行此操作。

类似的规则适用于.ssh目录限制。


#2楼

我在EC2上使用VPC并收到相同的错误消息。 我注意到我正在使用公共DNS。 我将其更改为私有DNS和vola !! 有效...


#3楼

什么对我有用

chgrp用户文件夹

chmod 600文件夹


#4楼

在Windows 8.1中使用Cygwin,需要运行一个命令:

chgrp用户〜/ .ssh / id_rsa

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

chmod 600〜/ .ssh / id_rsa

参考: http : //vineetgupta.com/blog/cygwin-permissions-bug-on-windows-8


#5楼

AFAIK的值为:

密钥文件所在的隐藏目录“ .ssh”的700

密钥文件“ id_rsa”为600


#6楼

在Windows 8.1上可以使用的与语言环境无关的解决方案是:

chgrp 545 ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa

GID 545是一个特殊的ID ,即使您的语言环境对Users使用不同的单词,它也始终引用“用户”组。


#7楼

有趣的消息在这里。 操作系统是足够聪明,拒绝远程连接,如果你的私钥是太开放。 它了解对id_rsa的权限完全开放(读取,任何人均可编辑)的风险。

{可以先改变你的锁,然后用他已经拥有的钥匙打开它}

cd ~/.ssh
chmod 400 id_rsa

在多台服务器(非生产)上工作时,我们大多数人都需要将远程服务器与ssh连接。 一个好主意是使用一段应用程序级代码(可能是Java,使用jsch)在服务器之间创建ssh信任。 这样,连接将无需密码。 如果安装了perl,也可以使用net ssh模块。


#8楼

在与Ansible玩耍时遇到了这个错误。 为了解决此问题,我将私钥的权限更改为600 。 而且有效!

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

#9楼

在Windows 10上,cygwin的chmod和chgrp对我来说还不够。 我必须右键单击文件->属性->安全性(选项卡),然后删除除活动用户之外的所有用户和组。


#10楼

提供400权限,执行以下命令

chmod 400 /Users/username/.ssh/id_rsa

在此处输入图片说明


#11楼

对于Win10需要将您的关键用户的主目录为linuxlike操作系统,你需要chmod来像700或600等。


#12楼

对于我(使用Linux的Ubuntu子系统),错误消息更改为:

 Permissions 0555 for 'key.pem' are too open

在使用chmod 400之后。事实证明,使用root作为默认用户是原因。

使用cmd更改此设置:

 ubuntu config --default-user your_username

#13楼

我在Windows 10中遇到了错误,因此我将权限设置为以下内容,并且它可以正常工作。

Windows 10的id_rsa的权限

详细信息,删除其他用户/组,直到只有“ SYSTEM”和“ Administrators”为止。 然后将Windows登录名添加为仅具有“读取”权限。

请注意, id_rsa文件位于c:\\users\\<username>文件夹下。


#14楼

这就是为我工作的东西(在Mac上)

sudo chmod 600 path_to_your_key.pem 

然后 :

ssh -i path_to_your_key user@server_ip

希望它可以帮助


#15楼

我为私钥尝试了600级权限,它对我有用。 chmod 600 privateKey [dev] $ ssh -i privateKey user @ ip正常工作

chmod 755 privateKey [dev] $ ssh -i privateKey user @ ip出现以下问题:'privateKey'的权限0755太开放了。 要求他人不能访问您的私钥文件。 此私钥将被忽略。 加载密钥“ privateKey”:权限错误


#16楼

从另一台Mac迁移后,我遇到了同样的问题。 它被我的钥匙阻止连接github。

我按如下所示重置了权限,并且现在可以正常使用了。

chmod 700 ~/.ssh     # (drwx------)
cd ~/.ssh            
chmod 644 *.pub      # (-rw-r--r--)
chmod 600 id_rsa     # (-rw-------)

#17楼

0600是我的目标(正在运行)


#18楼

密钥仅可由您读取:

chmod 400 ~/.ssh/id_rsa

如果您需要密钥可读写:

chmod 600 ~/.ssh/id_rsa

600似乎也不错(实际上,在大多数情况下更好,因为您以后无需更改文件权限即可对其进行编辑)。

联机帮助页中的相关部分( man ssh

  ~/.ssh/id_rsa Contains the private key for authentication. These files contain sensitive data and should be readable by the user but not accessible by others (read/write/execute). ssh will simply ignore a private key file if it is accessible by others. It is possible to specify a passphrase when generating the key which will be used to encrypt the sensitive part of this file using 3DES. ~/.ssh/identity.pub ~/.ssh/id_dsa.pub ~/.ssh/id_ecdsa.pub ~/.ssh/id_rsa.pub Contains the public key for authentication. These files are not sensitive and can (but need not) be readable by anyone. 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值