如何让新配置的服务器使用Ansible访问私有Git Repo?

问题描述:

我已经配置了一个服务器ansibl e现在我想克隆一个private git repo(而不是github)。如何让新配置的服务器使用Ansible访问私有Git Repo?

所以我的local machine's ssh key被授权在private git repo和我迄今为止所做的是copy我的本地公共和私人ssh密钥到服务器。

但我觉得这不是最好的办法。

我知道如果您使用的是github,您可以使用API来创建部署密钥。但我不是。

所以,唯一的其他方法可以让我看到的是:

  1. 生成新的服务器上的SSH密钥对
  2. 新创建的SSH密钥对本地与 fetch
  3. ssh-copy-id或使用authorized_keys
  4. 复制添加服务器密钥到私人git回购

有什么我失踪了,可以用另一种更简单的方式完成吗?

+0

“有什么我想念的,可以以另一种更简单的方式完成吗?” - 你的意思是除了使用可以自动执行你描述的3个步骤(ssh-keygen,在本地复制pubkey,将pubkey附加到私人git的'authorized_keys')并将其作为剧本运行? –

+0

是............ – surfer190

+0

您认为那些描述的步骤有什么错误? – ydaetskcoR

你还没有描述你的约束是什么,并没有提到,如果你很容易创建额外的密钥和管理他们在你的私人git回购。

另一种可能的选择:

  1. 设置ssh-agent运行ansible之前添加个人键一下,和你的代理转发到远程主机,当您运行ansible。
  2. 对于该解决方案:SSH Agent Forwarding with Ansible了解更多详情。

开始=“4”>
+0

嗯,我正在寻找一个最佳实践,虽然这种事情在这里皱起了眉头 – surfer190

+0

在'private git repo'中添加只读权限的'deploy'键并将其放到远程服务器上有什么问题? –