我使用 SSH 访问我的 NUC。在更新操作系统之前,我可以毫无问题地登录。更新后,我收到“权限被拒绝(公钥)”错误。我可以在我的计算机上看到必要的密钥文件。更新后,身份文件路径似乎被删除了。如何重置 SSH 登录时使用的默认身份文件?
debug1: Trying private key: /Users/xxx/.ssh/id_ed25519
debug3: no such identity: /Users/xxx/.ssh/id_ed25519: No such file or directory
debug1: Trying private key: /Users/xxx/.ssh/id_xmss
debug3: no such identity: /Users/xxx/.ssh/id_xmss: No such file or directory
debug2: we did not send a packet, disable method
debug1: No more authentication methods to try.
[email protected]: Permission denied (publickey).
答案1
如果你检查一下,ls ~/.ssh/id_*
我会想象你的 RSA/DSA 密钥仍然存在。例如,在我的系统上:
.ssh/id_ed25519 .ssh/id_ed25519.pub .ssh/id_rsa .ssh/id_rsa.pub
在某些情况下,您的旧 DSA/RSA 密钥可能会默认从密钥交换中省略。
您可以轻松创建和安装新的 ed25519 密钥:
ssh-keygen -t ed25519
ssh-copy-id {remote_host}
或者您可以允许引用旧密钥(如本例所示在命令行上,或者将其添加到 中的相关部分~/.ssh/config
)
ssh -o PubkeyAcceptedKeyTypes=+ssh-rsa {remote_host}