安裝 gitolite 不需要公鑰?

安裝 gitolite 不需要公鑰?

我們所有的開發人員都執行 Windows 工作站。我們運行 Linux 開發伺服器。我一直想嘗試在開發伺服器上運行我們自己的 git 伺服器。

經過一番研究後,我決定嘗試安裝矽藻土。很多關於如何安裝它的教程非常相似,我一直在關注這個

對我來說沒有多大意義的一步是它希望您在客戶端電腦上產生一個公鑰,然後將其上傳到伺服器並像這樣使用它:

$ gl-setup YourName.pub

我不明白這一步的目的是什麼...我想要連接到並使用 git 存儲庫的大約十幾台客戶端計算機...哪台計算機是“客戶端”計算機?我是否需要多次執行此步驟,為每台客戶端電腦執行一次?當我稍後需要添加新的客戶端電腦時會發生什麼?為什麼需要這一步?

我假設金鑰是為了客戶端電腦可以透過伺服器進行身份驗證而無需輸入登入/密碼?我不能只設定一個客戶端工作站用來存取 git 儲存庫的登入/密碼系統嗎?我可以只整合 LDAP 登入嗎?公鑰是必需的嗎?

另外,我們運行的是 Windows 工作站,而不是 Linux,因此產生公鑰並不像安裝 openssl 並執行它那麼簡單。

看來安裝這樣的東西應該​​比較簡單...

答案1

您需要為將使用 gitolite 的每個使用者/用戶端電腦組合產生/新增金鑰。密鑰被複製到您的 gitolite-admin/keydir 目錄中(我使用 $USERNAME-$HOSTNAME-id_rsa.pub 命名約定 - 不確定是否需要,但它對我有用)。將金鑰新增至 keydir 目錄後,您需要更新 gitolite-admin/conf/gitolite.conf 檔案以設定適當的項目/使用者存取權限(使用 $USERNAME-$HOSTNAME-id_rsa 作為命名約定)。

完成後,您可以進行git add conf keydircommit -m "blah blah blah"、 和git push origin master舞蹈,如果一切順利,適當的使用者應該能夠存取您伺服器上適當的 git 儲存庫。

編輯:我不記得 Windows 用戶正在使用什麼 git 用戶端設置,但它擁有生成密鑰的所有部分(它們不可用,所以我不能問他們)。我確實花了幾次嘗試才弄清楚並工作,但一旦設置好,它似乎工作得很好。

答案2

Gitolite 僅使用一個用戶,通常gitolite在伺服器上進行身份驗證。這就是為什麼您將其他使用者公鑰新增至 gitolitekeydir目錄以新增使用者的原因。在官方文件中你可以看到gitolite is (usually) heavily dependent on sshhttp://sitaramc.github.com/gitolite/gl_ssh.html

相關內容