记一次因未开启PubkeyAuthentication导致ssh无法免密登录

本文作者记录了解决在腾讯云服务器上通过ssh免密拉取代码遇到的问题,重点在于发现PubkeyAuthentication未开启,通过修改sshd_config文件并重启服务解决了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景

自己搭建了git服务器,想通过ssh免密登录,拉取代码

一般情况只需在.ssh/authorized_keys 中加入 需要免密机子的ssh公钥,就可以免密拉取了

自己手头处理过的服务器也有10来台了,但还是被这次的免密问题,坑了1~2天,特记录下来

通常解决思路

a) 服务器B上.ssh目录的权限必须是700

b) 服务器B上.authorized_keys文件权限必须是600或者644

本次排查

a)以前的方法都试了一遍,并和另外的服务器也进行比对,什么都一样,但就是需要密码登录

b)了解了一个命令 ssh -vvv root@ip

如 ssh -vvv root@123.45.6.78 它可以打印整个ssh登录的debug

本次问题其中有段

debug3: receive packet: type 51
debug1: Authentications that can continue: gssapi-keyex,gssapi-with-mic,password

正常的提示

debug3: receive packet: type 52
debug1: Authentication succeeded (publickey).

百度google中其他博主的错误问题是这样的(大部分人的错误都和我不一样,但他们都有publickey,没有publickey还怎么免密登录。。。)

debug3: receive packet: type 51
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password

这说明,整个问题的主要原因是没有 开启publickey的登录

可是配置了这么多台服务器,一般这个publickey的登录都是开启的,我这台腾讯云的服务器为什么会没有开启。

接下来就是找配置文件中去修改配置

问题解决

终于找到相关博客的类似问题

SFTP/SSH/SCP访问设置Public Key认证(适用于centosheldebian) - 走看看

vim /etc/ssh/sshd_config

// 找到 PubkeyAuthentication

PubkeyAuthentication yes    
##(原先这里果然是no,开启后问题就解决了)

重启 service sshd restart

问题解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值