【服务器】SSH 私钥报错 Permissions for ‘id_rsa‘ are too open. It is required that your private key
·
报错信息
Permissions for 'id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "id_rsa": bad permissions
xxx@xxx: Permission denied (publickey).
问题描述
(发现XShell自带的公私钥生成工具,生成的公私钥对不好使)
使用ssh-keygen生成公私钥对之后,直接在cmd命令行中进行连接:
ssh-keygen
得到

将公钥添加到服务器的authorized_keys之后,
ssh username@hostname -p 17022 -i id_rsa
报错如下

Permissions for 'id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "id_rsa": bad permissions
xxx@xxx: Permission denied (publickey).
解决办法
主要是因为本地的私钥文件 id_rsa 的权限太开放了
Windows环境下
在Windows本地环境下:
右键id_rsa文件 → 属性 → 高级

点击“禁用继承”

点击 “将已继承的权限转换为此对象的显式权限。”

之后情况如下:

然后把所有用户和组的权限都删除:


再点击 “添加”

输入当前的主机用户名(例如juruo),点击确定

看到 “主体”跟之前的 id_rsa文件的 所有者 保持一致



点击 应用:

之后就可以正常使用id_rsa这个私钥了:

Linux环境下
在Linux本地环境下:
chmod 600 ~/.ssh/id_rsa ~/.ssh/id_rsa.pub
参考:https://blog.csdn.net/IBLiplus/article/details/102405792
更多推荐


所有评论(0)