【已解决】Could not establish connection to xxx: Permission denied(publickey) 适用于linux系统
【已解决】Could not establish connection to xxx: Permission denied(publickey) 适用于linux系统
背景:
今天在主机上安装了一个ubuntu的系统,但是在连接实验室的服务器的时候出现了以下报错,我们实验室的服务器只能通过秘钥连接,我之前都是在我windows系统下在vscode中使用秘钥连接服务器,但是当我把秘钥复制到ubuntu系统中后就不能连接服务器了。、
报错信息如下:
Could not establish connection to xxx: Permission denied(publickey)

解决方法:
在终端中,进入秘钥所在的文件夹,路径一般是:/home/xxx/.ssh 其中xxx是用户名
对于每一个秘钥文件执行以下命令:
chmod 500 xxx
这里的xxx是秘钥的文件名
可以使用 ls 命令查看该文件夹已有的文件名字:

原理分析:
其实就是秘钥权限的问题,在Windows系统下,实验室的服务器是根据用户名
主要原因确实是秘钥文件的权限问题。在Linux系统中,SSH对秘钥文件的权限非常敏感,这是出于安全考虑。当秘钥文件的权限设置过于宽松时,SSH会认为该秘钥可能被未授权的用户访问,从而拒绝使用该秘钥进行认证,导致“Permission denied (publickey)”的错误。
在Windows系统中,文件权限的管理方式与Linux不同,Windows下的秘钥文件有较宽松的权限设置,这在Windows环境下不会引发问题。但当将该秘钥文件用于Linux系统中的SSH连接时,就需要遵循Linux的权限规则。
以上原理分析是个人主观意见,如有问题,欢迎指出。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)