在大量主机上管理 openssh 的authorized_keys 文件的最简单方法是什么?例如,如果我需要在 10 台主机上的帐户添加或撤销新密钥,我必须手动登录并添加公钥,或者通过笨拙的 shell 脚本,这非常耗时。

理想情况下,应该有一个中央数据库,将密钥链接到accounts@machines,并提供某种分组支持(即,将此密钥添加到Web类别中所有服务器上的用户名X)。有支持 ldap 的 SSH 分支,但我宁愿使用主线 SSH 软件包。

有帮助吗?

解决方案

我会检查 猴球 项目。它使用 OpenPGP 的信任网络概念来管理 ssh 的authorized_keys 和known_hosts 文件,而不需要更改ssh 客户端或服务器。

其他提示

我用 Puppet 做很多事情,包括这个。(使用 ssh_authorized_key 资源类型)

我总是通过维护不同服务器密钥的“主”树并使用 rsync 更新远程计算机来完成此操作。这使您可以在一个位置编辑内容,有效地推送更改,并使内容保持“最新”——每个人都编辑主文件,没有人在随机主机上编辑文件。

您可能想查看用于跨机器组运行命令的项目,例如位于 https://fedorahosted.org/func 或其他服务器配置管理包。

您是否考虑过使用 clustersh (或类似的)来自动化文件传输?另一种选择是集中式 配置系统.

/艾伦

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top