Terraform & Ansible 控制器和私钥分发

Posted

技术标签:

【中文标题】Terraform & Ansible 控制器和私钥分发【英文标题】:Terraform & Ansible controller and private key distribution 【发布时间】:2021-10-28 00:48:28 【问题描述】:

我有一堆没有使用 IaC 配置的服务器,它们都通过 SSH 从我的本地计算机访问。我从 2-3 台本地机器访问这些服务器,并为每台本地机器创建不同的私钥。

我有大量其他基础设施要配置,并考虑拥有一个云配置服务器,这样本地人就不需要 Terravision 和 Ansible,但很快意识到这意味着在服务器上拥有私钥很可能会有其他具有 sudo 访问权限的用户。似乎最好的方法是继续使用所有本地私钥。

我最终会得到大量服务器和更多密钥对。我也可能会有其他人需要服务器访问权限。

    我采用的从本地计算机进行配置的方法是最佳方法还是有替代方法? 人们如何大规模管理密钥 - 我遵循每个访问点的一组原则,以便在不影响其他访问点的情况下管理访问。我的 ~/.ssh/config 变得越来越大,感觉我应该从一个真实的访问源生成它,特别是因为不同的人访问会有所不同。在这种情况下,其他人在做什么?

【问题讨论】:

【参考方案1】:

看看 Hashicorp Vault。您的困境是创建 Hashicorp Vault 的原因之一。

我可以向您保证,不要随便使用 Vault。确保您对 Hashicorp Vault 的部署和管理有深入的了解。

我是 Dev/Ops 团队的一员,该团队在许多环境和区域、开发、QA、测试和生产环境中使用 vault。我个人没有管理它,所以我无法提供有关如何使用 Vault 的任何建议。

查看Vault Agent with AWS,了解有关 Vault 的信息。

我建议您仅在测试环境中使用它,直到您绝对确定,您知道管理保管库的过程。

哦,另一个链接,Encrypting content with Ansible Vault

【讨论】:

以上是关于Terraform & Ansible 控制器和私钥分发的主要内容,如果未能解决你的问题,请参考以下文章

SSH 密钥未受保护的 terraform ansible jenkins

如何在Ansible set_fact中使用fact?

「DevOps系列]为啥我们使用Terraform 而不使用Puppet, Ansible

Terraform:多租户的状态管理

Ansible playbook 卡在 Task 部分而不写日志

Terraform 学习笔记