我的猜测是,一台正在运行的机器ssh server
将 a 映射ssh public key
到有权访问的我的用户名(我是远程用户)。但是其他一些人和我也可以代表某个本地用户登录到远程机器(这意味着我们有一台远程机器,该机器有本地用户john.doe
)。这是否意味着还存在一个用户john.doe
到多个ssh public keys
有权代表 访问的映射john.doe
?
最简洁的答案是不。
示例场景:您 (Bob) 想要连接到远程主机 ( earth
) 作为alice
.
SSH 是从某个地方(Unix、Windows、平板电脑等)到alice
主机 ( earth
)上的用户( ) 的连接。
当你 ( bob
) 没有密码连接时,你使用一个私钥(在 Unix 上,它传统上位于~/.ssh
,但你可以把它放在任何地方)。
远程主机只有两个事实:
alice
,earth
具有公钥部分的远程主机 ( ) 发出任何拥有私钥部分的人都可以回答的挑战。挑战完成后,您只需连接即可。
在这种情况下,您证明了您拥有其中一个alice
授权密钥的私有部分。但是远程主机 ( earth
) 无法知道您是 Bob、Igor 或其他任何人。
请记住,您可以从用户方案完全不同的 Windows 或 Android 设备进行连接。
authorized_keys
该文件列出了可以连接的公钥(挑战后)。
该文件位于
${HOME}/.ssh/authorized_keys
(默认)AuthorizedKeysFile
的sshd_config
文件。见man sshd_config
。