绑定密钥对导致SSH服务异常

起因

  • 为了更加保障远程连接服务器地安全性,我为阿里云实例绑定了密钥对
  • 但在绑定密匙对之后,出现了以下问题:
  • 在使用宝塔面板的终端远程连接云服务器时,始终显示:无法自动认证,请填写本地服务器的登录信息!
  • 如下图所示:

image-20230627001126253

  • 这是一个很常见的错误,在此我对这种问题表明我的见解:(2023/06/26晚)

尝试解决

  • 首先排查宝塔面板的问题所在,即检查宝塔面板是否开启SSH服务,是否允许使用SSH密码、SSH密钥登录:

image-20230627001649533

  • 同时检查宝塔面板是否开放了SSH服务端口(默认端口号为22):

image-20230627001839451

  • 到这里,基本排除了宝塔面板本身的配置错误,即连接服务器失败,是由于服务器本身的SSH服务配置有误,或者相关端口未开放
  • 总之,问题出在服务器上
  • 服务器(阿里云服务器)SSH服务开启/重启失败,如此常见的问题,我苦苦找寻了两天却始终未能解决
  • 通过自主问题排查发现的问题:

  • 终端报错情况:

image-20230627080006664


image-20230625100319214

  • 但会是什么问题呢?有太多因素了,网上有令人眼花缭乱的解决方案,甚至阿里云官方有关SSH服务开启失败的解决办法,我都一一尝试过,甚至向智能AI描述问题寻求帮助,均无果
  • 在此给出我尝试过的一些解决方案吧,虽然没有解决问题,但很受用,让我更加深入了解到了SSH服务的相关配置

问题解决

  • 终于,我在执行了下面这条命令之后,注意到了这样的报错信息:

/sbin/sshd -d

image-20230626120841860

chmod 600 /etc/ssh/ssh_host_ed25519_key

image-20230627081916016

  • 那这究竟是怎么一回事呢?以下是我的理解:

问题分析

  • 我们在生成密钥对后,公钥被投送至服务端,私钥则保存在我们自己的文件目录下
  • 这样,将来SSH远程连接服务器时,除了使用用户名、密码登陆外,还可以使用私钥登录
  • 如上图所示, /etc/ssh/ssh_host_ed25519_key目录下保存的便是私钥,而给该文件设置的默认读写权限0777过于开放
  • 0777是一种非常宽松的权限设置,可能会带来安全风险,因为任何人都可以访问和修改该文件或目录,不符合相关要求,所以SSH服务连接失败

权限设置为0777,意味着所有者、所有者所属组和其他用户都具有读取(第一个7)、写入(第二个7)和执行(第三个7)的权限。这是一种非常宽松的权限设置,可能会带来安全风险,因为任何人都可以访问和修改该文件或目录。

  • 所以要对该密钥文件的权限设置为600,这是一种相对严格的权限设置,限制对文件的访问权限

600权限是一种相对严格的权限设置,它可以用于限制对文件的访问权限。具体权限设置为600表示只有文件的所有者拥有读取和写入的权限,而所有者所属组和其他用户没有任何权限。

  • 这就是绑定密钥对导致SSH服务异常的解决过程了
  • 非常感谢您能够看到这里,希望我的踩坑经历对您有所帮助!
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值