2015-11-06 36 views
0

我已經配置了一個服務器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

回答

1

你還沒有描述你的約束是什麼,並沒有提到,如果你很容易創建額外的密鑰和管理他們在你的私人git回購。

另一種可能的選擇:

  • 設置ssh-agent運行ansible之前添加個人鍵一下,和你的代理轉發到遠程主機,當您運行ansible。
  • 對於該解決方案:SSH Agent Forwarding with Ansible瞭解更多詳情。

    +0

    嗯,我正在尋找一個最佳實踐,雖然這種事情在這裏皺起了眉頭 – surfer190

    +0

    在'private git repo'中添加只讀權限的'deploy'鍵並將其放到遠程服務器上有什麼問題? –

    相關問題