在不指定用户名的情况下登录到远程服务器

Logging to remote server without specifying username

今天我配置了 ssh 密钥访问我的服务器。然后我测试了它们,我错误地忘记了指定用户,所以不是那样做:

ssh username@myserver.com

我就是这样做的

ssh myserver.com

但我以 username 身份成功登录。这怎么可能? ssh 服务器如何知道我以哪个用户登录?如果它是一个密钥,那么我可能会将同一个密钥添加到多个用户,在这种情况下会发生什么?

如果您没有在 ssh 命令中包含用户名,它将采用您从环境中登录时使用的用户名,因此发生的情况有两种可能性,1. 与 ssh 相关的用户名key 是您登录时使用的用户名,或者您登录时使用的其他用户名在服务器端 authorized_keys 文件中具有他的 public 密钥