Linux私钥权限问题引起的连接失败

我发现Linux的权限管理问题是我的一大盲点,而在各种操作过程中权限问题是很常见的问题。

今天想把windows的vscode remote 的配置文件搬迁到ubuntu上,也就是复制粘贴的事情的。但是尝试连接服务器的时候出现了下面的报错:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
local-server-3> Spawned ssh, pid=5584
OpenSSH_9.6p1 Ubuntu-3ubuntu13.5, OpenSSL 3.0.13 30 Jan 2024
debug1: Server host key: ssh-ed25519 SHA256:ArO5EGqVFe64yS9QHq7NWrW21b8DdBCrSIjD791gq14
No Kerberos credentials available (default cache: FILE:/tmp/krb5cc_1000)


No Kerberos credentials available (default cache: FILE:/tmp/krb5cc_1000)


@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0755 for '/home/thinkerhui/.ssh/thinkerhui.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/home/thinkerhui/.ssh/thinkerhui.pem": bad permissions
root@43.153.159.203: Permission denied (publickey,gssapi-with-mic).
local-server-3> ssh child died, shutting down

这前面Kerberos的报错可以直接忽略,因为我们并没有使用Kerberos认证。

https://zhuanlan.zhihu.com/p/266491528

ssh报错的主要原因并不是因为权限不够引起的,反而是因为权限太高引起的。

把文件的权限调整即可,提示不能被其他人得到,所以文件的权限设置为只允许文件所有者进行读写操作,其他任何用户都没有权限访问该文件:

1
chmod 600 /home/thinkerhui/.ssh/thinkerhui.pem

调整之后,vscode可以正常连接服务器了。


Linux私钥权限问题引起的连接失败
http://thinkerhui.site/2024/11/14/技术记录/Linux私钥权限问题引起的连接失败/
作者
thinkerhui
发布于
2024年11月14日
许可协议