Linux

SSH 密鑰指紋更改

  • February 9, 2022

所以我將一個 SSH 私鑰從我的 Linux 機器複製到了我的 M1 Mac。(我試圖通過將密文上傳到秘密管理器以及直接傳輸文件來做到這一點)但是當嘗試從每個機器通過 SSH 連接到同一台機器時,我只能從 Linux 機器上成功。

Linux機器:

$ ssh -V
OpenSSH_8.2p1 Ubuntu-4ubuntu0.4, OpenSSL 1.1.1f  31 Mar 2020
$ md5sum id_rsa
7ed8b0c73e168ef48acc715d4c6bcf73  id_rsa
$ sha256sum id_rsa
969d0a35b36c50035881bdd2d8367b90dbff548131d5c72989d29e83b7a3aa19  id_rsa
$ ssh-keygen -l -f id_rsa
4096 SHA256:d19Ee+tlzVHitLzKuuZbdgYcnhla96ypXNtpBwrqfqE redacted@redacted.com (RSA)
$ ssh -i id_rsa crthaze@ec2-55-55-55-55.compute-1.amazonaws.com
[redacted MOTD; WORKS]

M1 麥克:

$ ssh -V
openSSH_8.6p1, LibreSSL 2.8.3
$ md5 id_rsa
MD5 (id_rsa) = 7ed8b0c73e168ef48acc715d4c6bcf73
$ shasum -a 256 id_rsa
969d0a35b36c50035881bdd2d8367b90dbff548131d5c72989d29e83b7a3aa19  id_rsa
$ ssh-keygen -l -f id_rsa
4096 SHA256:rWsP9jN2otlchh8icr/jlnZxDjEfEkngDJOoPh4RYZI redacted@redacted.com (RSA)
$ ssh -i id_rsa crthaze@ec2-55-55-55-55.compute-1.amazonaws.com
crthaze@ec2-55-55-55-55.compute-1.amazonaws.com: Permission denied (publickey).

AFAICT 這些私鑰是相同的。但是由於某種原因 ssh-keygen 不會對它們進行相同的指紋辨識。即使它們具有相同的校驗和。這可能是 M1 SoC 的問題嗎?還是這裡發生了更明顯的事情?

這裡的問題是對 ssh-keygen 如何報告指紋的誤解。即使您為它提供了私鑰的路徑,使用 -l 標誌它也會使用相應的公鑰文件。這就是我仍然不匹配的地方。修復公鑰後,一切都按預期工作。

引用自:https://serverfault.com/questions/1092947