修复 SSH 私钥"权限过于开放"报错(chmod 600)

用 chmod 600 把 SSH 私钥设为仅本人可读,让 ssh 正常使用密钥,也防止其他用户读取。

Linuxchmod 权限SSH 远程连接权限安全中风险
运行 chmod 600 ~/.ssh/id_ed25519(~/.ssh 目录设为 700),ssh 就会重新接受你的私钥。

01命令

命令
$ chmod 600 ~/.ssh/id_ed25519 && ls -l ~/.ssh/id_ed25519

02作用说明

SSH 拒绝使用系统里其他用户也能读取的私钥,这是刻意设计——全局可读的私钥等于已经泄露。chmod 600 只给所有者读写权限;~/.ssh 目录本身应为 700,对应的 .pub 公钥文件保持 644 即可。如果你有多个密钥,~/.ssh 下每个私钥文件都要同样处理,之后也不要再放宽权限——出现"UNPROTECTED PRIVATE KEY FILE"警告就说明权限又太开放了。

03风险

风险中风险
!注意: 如果私钥曾被别人可读(如 0644、被网盘同步过、或在任何地方粘贴过),应视为已泄露,正确做法是重新生成密钥对,而不只是改权限。

04撤销

✓无需撤销——该命令不会改变持久状态。

05来源

最后验证: 2026-09-18 · 分类: 安全与隐私

06相关方案