为什么我可以使用任何私钥对我的服务器执行 ssh?

Why can I do ssh to my server using any private key?

我为连接到我的服务器启用了 Public 密钥身份验证,在使用正确的私钥连接到我的服务器后,我可以使用任何私钥文件对我的服务器进行身份验证并且它有效。

我使用 -i 选项来指定私钥: ssh -i /anything meliwex@server_ip

即使文件不存在,我仍然可以连接到我的服务器。

ssh有可能缓存私钥吗?如果是,我该如何删除该缓存?

您可以添加 -v 以查看真正使用了哪些键。

-i 选项不是唯一的,ssh 仍然可以使用来自 ssh-agent 的密钥以及来自 .ssh/id_*

的默认密钥

可能您在 .ssh/id_rsa 中的密钥未受密码保护。
因此 ssh 将静默使用它,您可以登录。