是否可以将根 ssh 密钥添加到 ESX 主机上的 /etc/ssh/keys-root/authorized_keys,而无需登录每个框?

是否可以将根 ssh 密钥添加到 ESX 主机上的 /etc/ssh/keys-root/authorized_keys,而无需登录每个框?

我有近 70 个 ESX 主机需要添加根 SSH 密钥。有没有办法通过 vsphere 或 powercli 执行此操作,还是我必须手动通过 SSH 进入每个框并将行添加到每个文件?

答案1

我也有大量 ESXi 主机...我们不对主机进行密钥交换,因为您的大部分实际工作应该在另一层完成(API、vCenter、PowerCLI 等)

为什么需要添加密钥?ESXi 不是通用操作系统,因此我希望虚拟机管理程序访问不频繁。

如果你确实需要这个,你可以使用期望脚本从 Linux 主机或将其构建到构建/映像过程中。由于 VMware ESXi 主机可以启动使用此提示获取未来版本的关键。

答案2

您可以通过运行 vSphere CLI(基于 Perl 的,而不是 PowerCLI!)来更新文件

vifs.pl –-server <hostname> –-username <username> –-put ssh_root_authorized_keys /host/ssh_root_authorized_keys

这会将名为 ssh_root_authorized_keys 的本地文件上传到主机。

答案3

您可以使用此脚本添加密钥并自动 ssh 到每个主机:

http://goo.gl/Pu8VBF

按照网址查看 perl 脚本,您可以使用此行修改它以添加密钥:touch ~/.ssh/authorized_keys && cat - >> ~/.ssh/authorized_keys"

相关内容