![不同的 SSH 版本和行为,公钥失败](https://linux22.com/image/780177/%E4%B8%8D%E5%90%8C%E7%9A%84%20SSH%20%E7%89%88%E6%9C%AC%E5%92%8C%E8%A1%8C%E4%B8%BA%EF%BC%8C%E5%85%AC%E9%92%A5%E5%A4%B1%E8%B4%A5.png)
我有 2 台 Ubuntu 机器,一台新的 A 和旧的 B。ssh 配置文件相同,但是版本不同,正如预期的那样:
→ ssh -v localhost
A:
OpenSSH_8.9p1 Ubuntu-3, OpenSSL 3.0.2 15 Mar 2022
乙:
OpenSSH_8.2p1 Ubuntu-4ubuntu0.5, OpenSSL **1.1.1f** 31 Mar 2020
还有第三台机器 C,一台旧服务器,它表现出一种我没有预料到的行为——老的机器 B 可以与其建立公钥 ssh 连接,而新的 A 则不能(A 和 B 的公钥都在用户的 authorized_keys 中):
debug1: send_pubkey_test: no mutual signature algorithm
debug2: we did not send a packet, disable method
debug1: Next authentication method: password
不知道这是否有帮助,我从源代码安装了新版本的 openssl 到 C:
# openssl version
OpenSSL 1.1.1q 5 Jul 2022
,但是这并没有改变任何东西,不过我确实注意到 C 的 ssh 配置中多了一行:
GSSAPIDelegateCredentials no
但我怀疑这与我遇到的问题无关。
我究竟做错了什么?
感谢大家的时间!