问题现象
突然无法通过证书认证登录Linux系统
问题定位
通过密码或者console登录到Linux服务器,执行journalctl -f -u sshd,然后再次使用证书认证访问系统,可以看到如下报错信息:
~]# journalctl -f -u sshd-- Logs begin at 四 2024-08-15 16:32:13 CST. --……9月 23 15:06:28 linshi-k8s sshd-session[3551]: userauth_pubkey: signature algorithm ssh-rsa not in PubkeyAcceptedAlgorithms [preauth]9月 23 15:06:28 linshi-k8s sshd-session[3551]: userauth_pubkey: signature algorithm ssh-rsa not in PubkeyAcceptedAlgorithms [preauth]~]# sshd -VOpenSSH_9.8p1, OpenSSL 1.1.1p 21 Jun 2022因升级openssh到9.8p1之后,PubkeyAcceptedAlgorithms中默认不包含ssh-rsa。
解决办法
1、编辑配置文件,增加PubkeyAcceptedAlgorithms=+ssh-rsa
~]# vi /etc/ssh/sshd_config
PubkeyAcceptedAlgorithms=+ssh-rsa
2、重启ssh服务
~]# service sshd restart
关联内容《构建并升级openssh至OpenSSH_9.8p1_openssh rpm包制作步骤9.8-CSDN博客》