Yan*_*all 1859 permissions ssh
我的mac出了问题,我无法在磁盘上保存任何类型的文件.我不得不重新启动OSX lion并重置文件和acls的权限.
但是现在当我想提交存储库时,我从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.
Run Code Online (Sandbox Code Playgroud)
我应该为id_rsa文件提供哪些权限级别?
qui*_*tin 3136
密钥只能由您阅读:
chmod 400 ~/.ssh/id_rsa
Run Code Online (Sandbox Code Playgroud)
600似乎也很好(事实上在大多数情况下更好,因为你不需要更改文件权限来编辑它).
联机帮助页的相关部分(man ssh
)
Run Code Online (Sandbox Code Playgroud)chmod 600 ~/.ssh/id_rsa
tan*_*za9 96
在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
the*_*use 39
在Windows 8.1上运行的与语言环境无关的解决方案是:
chgrp 545 ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
Run Code Online (Sandbox Code Playgroud)
GID 545是一个特殊ID,始终引用"用户"组,即使您的区域设置对用户使用不同的单词也是如此.
Rav*_*ina 35
当我尝试使用公钥登录远程 ftp 服务器时,我遇到了类似的问题。
为了解决这个问题,我做了以下过程:
600
。chmod 600 id_rsa
Run Code Online (Sandbox Code Playgroud)
Nav*_*ame 31
我取得了成功sudo
sudo chmod 400 pem-file.pem
sudo ssh -i pem-file.pem username@X.X.X.X
Run Code Online (Sandbox Code Playgroud)
lm5*_*050 27
AWS 上的 Windows 10 SSH 进入 Ubuntu EC2“权限太开放”错误
我在尝试使用来自 AWS 的 .pem 文件通过 ssh 连接到 Ubuntu EC2 实例时遇到了这个问题。
在 Windows 中,当我将此密钥放在 .ssh 文件夹下创建的文件夹中时,这会起作用
C:\Users\USERNAME\.ssh\private_key
Run Code Online (Sandbox Code Playgroud)
在 Windows 10 中更改权限设置:
文件设置 > 安全 > 高级
禁用继承
将继承权限转换为显式权限
删除除管理员以外的所有权限条目
然后可以安全地连接。
小智 14
密钥的"0x00"权限要求有一个例外.如果密钥由root拥有并且由具有用户的组拥有,则它可以是"0440",并且该组中的任何用户都可以使用该密钥.
我相信这将适用于"0xx0"集中的任何权限,但我没有测试每个版本的每个组合.我在CentOS 6上尝试过0660和5.3p1-84,并且该组不是用户的主要组而是辅助组,并且它工作正常.
对于某人的个人密钥,通常不会这样做,但对于用于自动化的密钥,在您不希望应用程序能够弄乱密钥的情况下.
类似的规则适用于.ssh目录限制.
Suj*_*ale 13
提供400权限,执行以下命令
chmod 400 /Users/username/.ssh/id_rsa
Run Code Online (Sandbox Code Playgroud)
Sup*_*nno 11
我在Windows 10中遇到了错误,因此我将权限设置为以下内容,并且它可以正常工作。
详细信息,删除其他用户/组,直到只有“ SYSTEM”和“ Administrators”为止。然后将Windows登录名添加为仅具有“读取”权限。
请注意该id_rsa
文件位于c:\users\<username>
文件夹下。
Nig*_*ist 10
对于 Windows :
奇怪的是,之前描述的 UI 调整并没有帮助我。
但这解决了问题:
:
$path = ".\{your private key file name}" //for example "myKey"
Run Code Online (Sandbox Code Playgroud)
然后通过键入以下内容删除您的显式权限:
icacls.exe $path /reset
Run Code Online (Sandbox Code Playgroud)
然后分配给当前用户读取权限:
icacls.exe $path /GRANT:R "$($env:USERNAME):(R)"
Run Code Online (Sandbox Code Playgroud)
然后删除继承:
icacls.exe $path /inheritance:r
Run Code Online (Sandbox Code Playgroud)
希望能帮助某人
小智 10
只需使用以下内容:
sudo chmod 600 [Location of Private Key]/[Name of Private Key]
sudo chmod 700 [Location of Folder Containing Private Key]/[Name of Folder Conataining Private Key]
sudo ssh -v -i key.pem ubuntu@instance.re-region-1.compute.amazonaws.com
Run Code Online (Sandbox Code Playgroud)
最简单的答案就是输入:sudo ssh -i keyfile.pem <user>@ip
您无法在 Windows 上的 Ubuntu 上的 Bash 上使用 chmod 来修改 Windows 文件系统上的文件的权限。您必须将私钥复制到 WSL 主目录 (~) 并在那里进行操作。
另一方面,sudo
绝对不应该与 ssh 一起使用。发出 with 有效的原因sudo
是它现在可能以 root 身份执行,这不是执行此操作的正确方法,并且存在巨大的安全风险,因为允许 600/400 权限以外的任何内容都违背了利用 SSH 的目的密钥,从而损害密钥的安全性。
最好的方法是将文件复制到$HOME/.ssh
:
cp keyfile.pem ~/.ssh
正在做sudo chmod 400 keyfile.pem
它。
然后ssh -i keyfile.pem <user>@ip
。
在Windows 10上,cygwin的chmod和chgrp对我来说还不够。我必须右键单击文件->属性->安全性(选项卡),然后删除除活动用户之外的所有用户和组。
从另一台 Mac 迁移后我遇到了同样的问题。而且我的密钥无法连接 github。
我按如下方式重置了权限,现在效果很好。
chmod 700 ~/.ssh # (drwx------)
cd ~/.ssh
chmod 644 *.pub # (-rw-r--r--)
chmod 600 id_rsa # (-rw-------)
Run Code Online (Sandbox Code Playgroud)
小智 6
正如人们所说,在 Windows 中,我只需将.pem
文件放入C:\Users\[user]\.ssh\
即可解决问题。尽管您可以chmod
从 bash 或 powershell 提示符执行其他命令行选项,但这不起作用。我没有更改 rsa 或其他任何内容。然后,在运行连接时,您必须将 pem 文件的路径放入文件.ssh
夹中:
ssh -i "C:\Users\[user]\.ssh\ubuntukp01.pem" ubuntu@ec[ipaddress].us-west-2.compute.amazonaws.com
Run Code Online (Sandbox Code Playgroud)
对我来说(使用 Windows 的 Ubuntu 子系统)错误消息更改为:
Permissions 0555 for 'key.pem' are too open
Run Code Online (Sandbox Code Playgroud)
使用 chmod 400 后。事实证明,使用 root 作为默认用户是原因。
使用 cmd 更改此设置:
ubuntu config --default-user your_username
Run Code Online (Sandbox Code Playgroud)
小智 5
这就是为我工作的东西(在Mac上)
sudo chmod 600 path_to_your_key.pem
Run Code Online (Sandbox Code Playgroud)
然后 :
ssh -i path_to_your_key user@server_ip
Run Code Online (Sandbox Code Playgroud)
希望对你有帮助
归档时间: |
|
查看次数: |
1229805 次 |
最近记录: |