root如何使用别人私钥登录?

时间:2012-10-12 09:17:52

标签: linux ssh ssh-keys

用户``alice''具有对服务器example.com的公钥访问权限。所以他可以这样做:

ssh root@example.com

没有pwd。

现在在同一个本地机器上,root也可以这样做,即他可以在没有pwd的情况下访问远程机器。但我甚至没有为root生成密钥对。所以看起来root使用alice的私钥登录到远程服务器。怎么会发生这种情况?错误,或错误配置,或我的误解?

当然root可以访问alice的id_rsa文件,但它自动使用该文件很奇怪。

2 个答案:

答案 0 :(得分:1)

听起来好像为机器配置了Alice的身份文件。查看/etc/ssh_config,您应该找到一个指向Alice的id_rsa文件的Identity文件条目。看起来应该是这样的:

IdentityFile ~Alice/.ssh/id_rsa

如果这是真的,这意味着Alice的计算机上的任何用户都可以作为root用户ssh到example.com服务器。要防止这种情况,请在ssh_config中注释掉或删除此行。

答案 1 :(得分:-1)

我认为存在误解。用户'Alice'具有root权限。这就是为什么'Alice'和'root'都可以以root身份ssh到example.com - 两者都以root权限共享同一个用户组。检查GID。