在大量主机上管理openssh的authorized_keys文件的最简单方法是什么?如果我需要在10个主机上添加或撤销帐户的新密钥,我必须手动登录并添加公钥,或者通过笨拙的shell脚本,这很费时间。
理想情况下,会有一个中心数据库将密钥连接到帐户@机器,并提供某种分组支持(IE,将此密钥添加到Web类别中所有服务器上的用户名X)。有支持ldap的SSH分支,但我宁愿使用主线SSH软件包。
答案 0 :(得分:5)
我要结帐Monkeysphere项目。它使用OpenPGP的信任概念网来管理ssh的authorized_keys和known_hosts文件,而无需更改ssh客户端或服务器。
答案 1 :(得分:3)
我使用Puppet做很多事情,包括这个。 (使用ssh_authorized_key资源类型)
答案 2 :(得分:0)
我总是通过维护不同服务器密钥的“主”树,并使用rsync更新远程计算机来完成此操作。这使您可以在一个位置编辑内容,有效地推送更改,并使事情“保持最新” - 每个人都编辑主文件,没有人编辑随机主机上的文件。
您可能希望查看为跨机器组运行命令而生成的项目,例如https://fedorahosted.org/func处的Func或其他服务器配置管理包。
答案 3 :(得分:0)
您是否考虑过使用clusterssh(或类似)自动执行文件传输?另一个选项是集中式configuration systems之一。
/阿伦