如何让新配置的服务器使用Ansible访问私有Git Repo?
我已经配置了一个服务器ansibl
e现在我想克隆一个private git repo
(而不是github
)。如何让新配置的服务器使用Ansible访问私有Git Repo?
所以我的local machine's ssh key
被授权在private git repo
和我迄今为止所做的是copy
我的本地公共和私人ssh密钥到服务器。
但我觉得这不是最好的办法。
我知道如果您使用的是github
,您可以使用API
来创建部署密钥。但我不是。
所以,唯一的其他方法可以让我看到的是:
- 生成新的服务器上的SSH密钥对 新创建的SSH密钥对本地与
-
ssh-copy-id
或使用authorized_keys
来 - 复制添加服务器密钥到私人git回购
fetch
有什么我失踪了,可以用另一种更简单的方式完成吗?
你还没有描述你的约束是什么,并没有提到,如果你很容易创建额外的密钥和管理他们在你的私人git回购。
另一种可能的选择:
- 设置
ssh-agent
运行ansible之前添加个人键一下,和你的代理转发到远程主机,当您运行ansible。
对于该解决方案:SSH Agent Forwarding with Ansible了解更多详情。
嗯,我正在寻找一个最佳实践,虽然这种事情在这里皱起了眉头 – surfer190
在'private git repo'中添加只读权限的'deploy'键并将其放到远程服务器上有什么问题? –
“有什么我想念的,可以以另一种更简单的方式完成吗?” - 你的意思是除了使用可以自动执行你描述的3个步骤(ssh-keygen,在本地复制pubkey,将pubkey附加到私人git的'authorized_keys')并将其作为剧本运行? –
是............ – surfer190
您认为那些描述的步骤有什么错误? – ydaetskcoR