赞
踩
我从 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 文件什么权限?
huntsbot.com提供全网独家一站式外包任务、远程工作、创意产品分享与订阅服务!
密钥只能由您读写:
chmod 600 ~/.ssh/id_rsa
或者,密钥只能由您读取(这也会阻止您的写访问):
chmod 400 ~/.ssh/id_rsa
600 在大多数情况下似乎更好,因为您以后无需更改文件权限即可对其进行编辑。 (有关更多细微差别,请参阅评论)
手册页中的相关部分 (man ssh)
~/.ssh/id_rsa 包含用于身份验证的私钥。这些文件包含敏感数据,用户应该可以读取,但其他人不能访问(读/写/执行)。如果其他人可以访问,ssh 将简单地忽略私钥文件。在生成将用于使用 3DES 加密此文件的敏感部分的密钥时,可以指定一个密码短语。 ~/.ssh/identity.pub ~/.ssh/id_dsa.pub ~/.ssh/id_ecdsa.pub ~/.ssh/id_rsa.pub 包含用于认证的公钥。这些文件不敏感,任何人都可以(但不必)读取。
400 太低了,因为这使得您自己的用户无法写入。实际上建议使用 600,因为它允许所有者读写而不仅仅是读取。
我今天发现有时 400 是相关的。假设您有一个包含 no-pty et al 功能集的 authorized_keys 文件。如果文件是可写的,用户实际上可以覆盖authorized_keys 文件并获得交互式shell 访问权限!需要记住的事情,尽管对于大多数人来说肯定不是一般情况。
AWS 实际上在他们的网站上推荐了 400 权限。这就是我在 OS X 上所做的,它奏效了。
这绝对有效并且更安全。唯一的缺点是您必须将其更改为 600 才能进行编辑。对于 id_rsa 和 id_rsa.pub,我怀疑这很重要,因为您很少会编辑这些文件,但对于 authorized_keys,这可能很烦人。最好了解权衡并适当地配置每个系统。
我想这还取决于您编辑它们的频率。许多人设置它并忘记它,因此 400 对他人和您自己的行为会更安全;必要时修改为600。如果它是您的工作流程的一部分并且您精通 ssh,那么它可能会成为不断更改权限的更多障碍。
huntsbot.com提供全网独家一站式外包任务、远程工作、创意产品分享与订阅服务!
在 Windows 8.1 中使用 Cygwin,需要运行一个命令:
chgrp Users ~/.ssh/id_rsa
那么这里贴的解决方案就可以应用了,400或者600都可以。
chmod 600 ~/.ssh/id_rsa
Reference here
依赖于语言环境。我不得不运行“chgrp Użytkownicy ~/.ssh/id_rsa”,因为“用户”没有错误地发现这样的组。
我也必须这样做。我的 cygwin 目录位于默认位置 (C:\cygwin64),因此它可能继承了权限。奇怪的是,这在我拥有的其他笔记本电脑上没有发生。
@Marcos 我添加了一个适用于任何语言环境的答案:stackoverflow.com/a/28647713/67013
Windows 10。仅使用第二个命令。像魅力一样工作。
请注意,对于替代语言的安装,“用户”组具有替代标识符。
huntsbot.com – 高效赚钱,自由工作
我的 Windows 10 出现错误,因此我将权限设置如下,它可以工作。
https://i.stack.imgur.com/Arb4o.png
详细地说,删除其他用户/组,直到它只有“系统”和“管理员”。然后将您的 Windows 登录名添加到其中,仅具有读取权限。
请注意,id_rsa 文件位于 c:\users<username> 文件夹下。
我在 Win-10 上遇到了同样的问题。根据您的解释,不清楚您实际允许和拒绝了什么 - 我有“用户”和“经过身份验证的用户”而不是“特定用户”作为选项 + 系统和管理员。此外,我无法弄清楚 cygwin - 安装或使用。(?)
对于 Win10,需要将您的钥匙移动到用户家中 - 这非常有效。我试图提供完整的密钥路径并弄乱权限 - 没有任何效果。
@Sam-T 如果您在列表中看不到您的姓名,您可以按 Edit... 添加,然后按 Add...,然后在文本框中输入您的姓名 "Enter the object names to select",然后按 Check Names 按钮(然后按 OK 和另一个 OK),那么您的姓名应列在 Security 选项卡中
我可能可以根据您的指示专门添加名称。但我的主要问题是 - 拒绝和允许所有人的确切权限。同时,如上所述,我只需将 .pem 添加到 myuser directory 即可解决问题
哦谢谢。这在 Windows 10 上完美运行,我试图实现这一目标数周。
huntsbot.com – 高效赚钱,自由工作
适用于 Windows 8.1 的独立于语言环境的解决方案是:
chgrp 545 ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
GID 545 是一个始终指代“用户”组的 special ID,即使您的区域设置对用户使用了不同的词。
保持自己快人一步,享受全网独家提供的一站式外包任务、远程工作、创意产品订阅服务–huntsbot.com
AFAIK的价值观是:
密钥文件所在的隐藏目录 .ssh 为 700
密钥文件 id_rsa 为 600
huntsbot.com聚合了超过10+全球外包任务平台的外包需求,寻找外包任务与机会变的简单与高效。
0600 是我的设置(并且它正在工作)
保持自己快人一步,享受全网独家提供的一站式外包任务、远程工作、创意产品订阅服务–huntsbot.com
AWS 上的 Windows 10 SSH 进入 Ubuntu EC2 “权限太开放”错误
我在尝试使用 AWS 的 .pem 文件 ssh 进入 Ubuntu EC2 实例时遇到了这个问题。
在 Windows 中,当我将此密钥放在 .ssh 文件夹下创建的文件夹中时,这有效
C:\Users\USERNAME\.ssh\private_key
在 Windows 10 中更改权限设置:
文件设置 > 安全 > 高级 禁用继承 将继承的权限转换为显式权限 删除除管理员之外的所有权限条目
然后可以安全地连接。
那真的很有帮助!谢谢!
在 .ssh 下移动私钥对我来说就足够了(和 chmod 600)
huntsbot.com汇聚了国内外优秀的初创产品创意,可按收入、分类等筛选,希望这些产品与实践经验能给您带来灵感。
当我尝试使用公钥登录远程 ftp 服务器时,我遇到了类似的问题。为了解决这个问题,我做了以下过程:
首先找到公钥的位置,因为当你尝试登录 ftp 时,会使用这个公钥。
或者,您可以创建一个密钥并将该密钥的权限设置为 600。
确保您位于正确的位置并执行以下命令:
chmod 600 id_rsa
这适用于 macOS m1
与HuntsBot一起,探索全球自由职业机会–huntsbot.com
在 Windows 10 上,cygwin 的 chmod 和 chgrp 对我来说还不够。我不得不
右键单击文件
-> 属性
-> 安全(选项卡)
并删除除我的活动用户之外的所有用户和组。
这是唯一有效的解决方案:) 谢谢你节省了我的时间
我发现,在这样做之后,我也可以从普通的 Windows 命令提示符执行 ssh。无需使用 Cygwin。伟大的!
huntsbot.com汇聚了国内外优秀的初创产品创意,可按收入、分类等筛选,希望这些产品与实践经验能给您带来灵感。
提供400权限,执行以下命令
chmod 400 /Users/username/.ssh/id_rsa
https://i.stack.imgur.com/8Nj3Q.jpg
保持自己快人一步,享受全网独家提供的一站式外包任务、远程工作、创意产品订阅服务–huntsbot.com
我通过 sudo 获得了成功
sudo chmod 400 pem-file.pem
sudo ssh -i pem-file.pem username@X.X.X.X
唯一对我有用的东西
sudo 是唯一有效的方法
使用windows wsl,这行得通!
原文链接:https://www.huntsbot.com/qa/da53/ssh-permissions-are-too-open-error?lang=zh_CN&from=csdn
huntsbot.com汇聚了国内外优秀的初创产品创意,可按收入、分类等筛选,希望这些产品与实践经验能给您带来灵感。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。