Permission denied (publickey)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Permission denied (publickey)相关的知识,希望对你有一定的参考价值。
参考技术A 在用Linux终端使用ssh root@server_ip来连接到远程服务器时,出现Permission denied (publickey).提示分析登录过程,Permission denied(publickey)的问题可能如下
1、远程服务器没有添加公钥(无法认证)
2、远程服务器公钥文件夹权限错误( .ssh 和 .ssh/authorized_keys 需要保证只有用户自己有权限,否则验证无效)
如果服务器端根本就没有添加公钥是断然不可能通过认证的
1、客户端已经有秘钥对:通过其它方式登录到远程服务器,查看 ~./ssh/authorized_keys 文件中是否添加了公钥,若没有可直接将公钥内容拷贝到该文件末尾
2、客户端没有秘钥对:通过 ssh-keygen 命令生成秘钥对,默认文件夹是 ~/.ssh 文件夹,将 .ssh 文件夹内 id_rsa.pub 的内容拷贝到服务器上的 ~./ssh/authorized_keys 文件末尾(若服务器上 ~./ssh/authorized_keys 不存在则也可以使用 ssh-keygen 来生成文件结构)
远程服务器 ~/.ssh 文件夹及其文件权限不对,包括
1、 ~./ssh/authorized_keys 文件权限
2、 ~/.ssh 文件夹权限
3、 ~/.ssh 文件夹所有权
通过其它方式登录到远程服务器,如果是阿里云则可以在网页中通过验证之后打开一个终端,然后进行如下操作
感谢评论区提醒,上文所有的~符号均为英文符号
mac使用ssh出现permission denied(publickey)
看出错信息是权限太开放的问题,google了一下,修改权限,不只是需要修改 .pem 文件的权限,还需要修改.ssh目录和用户目录
chmod go-w ~/ chmod 700 ~/.ssh chmod 600 ~/.ssh/ring.pem
再次使用命令
ssh -i ~/.ssh/ring.pem IP地址
发现还是出错
Permission denied (publickey).
无奈多方搜索尝试,发现了aws的排错文档,
里面有这么一段
-
对于 Amazon Linux AMI,用户名称是
ec2-user
。 -
对于 RHEL5 AMI,用户名称为
root
或ec2-user
。 -
对于 Ubuntu AMI,用户名称是
ubuntu
。 -
对于 Fedora AMI,用户名称为
fedora
或ec2-user
。 -
对于 SUSE Linux,用户名称是
root
或ec2-user
。 -
另外,如果
ec2-user
和root
无法使用,请与 AMI 供应商核实。
于是尝试使用各个用户名登录,最后使用
ssh -i ~/.ssh/ring.pem ubuntu@IP地址
成功登录!
问题解决~
以上是关于Permission denied (publickey)的主要内容,如果未能解决你的问题,请参考以下文章
git clone 报错 sign_and_send_pubkey: signing failed: agent refused operation Permission denied (public
mac使用ssh出现permission denied(publickey)
permission 和 user-permission的区别