如果我正在使用类似gitolite的东西来处理访问控制,则authorized_keys的扩展程度如何?这意味着如果我说有50,000个用户,那么性能将是什么样(我猜不是很好)。有哪些选择?
更新: 我决定自己做一些测试(首先应该做的)。我编写了一个简单的脚本来生成SSH密钥并将其添加到authorized_keys文件中。我的计算机不是那么快,所以我只生成了8,061个密钥,然后将自己的密钥添加到最后,文件最终为3.1MB。然后,我添加了一个文件的git存储库,并运行了git clone 3次:
With 8,061 keys (Mine is at the end of the file)
real 0m0.442s
real 0m0.447s
real 0m0.458s
With just a single key:
real 0m0.248s
real 0m0.264s
real 0m0.255s
性能比我想象的要好得多。我仍然对任何可能对50,000+的大型按键组更快,更高效的替代方案非常感兴趣。
您是否希望单个服务器具有50000个模拟用户,或者具有零星访问权限的总共50000个用户?
—
Mxx
零星访问。我在问SSH服务器的性能,该服务器必须在每次登录时搜索具有50,000个密钥的authorized_keys文件。
—
杰里米
authorized_keys
具有5万个密钥的文件只有25MB左右。当然,这将完全缓存到文件系统缓冲区中。我以为在文件中找到密钥的时间与实际使用该密钥对用户进行身份验证的时间相形见。