记一次debian ssh免密登录排障过程

背景

计划在本地win11系统和远程开发机上做个ssh免密登录,之前有跟着百度做过2-3次的经验,但是由于时间太久很多细节几乎忘记,

只能大概记得生成一对密钥,然后公钥放在服务器,私钥放本地做验证就好了。

然后就简单百度了一下,在debian上的~/.ssh目录中创建了一个authorized_keys文件夹,然后把公钥丢里面,然后配置MobaXterm登录。

 

结果是登录失败

 

 

 

想着没有配置错误为什么会没有免密成功呢?

 

解决思路:

ps: 确定了公钥和私钥是有效没问题,因为在其他机器上是可以用。

 

首先想到的思路是按照百度就当是白板机,全部重新来一遍,这样肯定没有问题。

第二个思路是查看日志来排错。

 

解决方式选择第二种,

 

通过查看 /var/log/auth.log文件的日志定位错误。

 

 

 

错误问题是:

User qfz authorized keys /home/xxx/.ssh/authorized_keys is not a regular file

翻译一下就是:授权密钥不是常规文件

那么问题多半就是出在authorized_keys文件上。

 

把相关键字在论坛搜一下https://serverfault.com (百度搜到的有效信息很低,技术问题不建议使用百度来搜索解决,百度搜索前三条没有应该果断换其他的搜索方式)

 

解决问题参考链接:

https://serverfault.com/questions/418797/ssh-from-putty-to-debian-authorized-keys-is-not-a-regular-file-error

 

 

 

issues中大佬的回答很直接了,就是说这个报错的原因是authorized_keys命名的不应该是个文件存在于~/.ssh/文件夹中。

 

看到这里恍然大悟原来搞错了authorized_keys应该是文件而不是文件夹。

 

知道问题了解决方式就是将原有authorized_keys下的公钥移除了到./ssh中,然后删掉authorized_keys文件夹,将之前上传的公钥命名改成authorized_keys。

 

然后就完美解决了。

 

posted @ 2022-03-29 00:49  包子铺1234  阅读(451)  评论(0编辑  收藏  举报