Gitolite SSH URL 格式

Gitolite SSH URL 格式

所以我得到了矽藻土設定.簡單的。但我遇到了一個問題。 SSH URL 遵循git@host:repo.我已經習慣了位元桶/吉圖布其中 url 遵循git@host:user/repo.有沒有辦法使用後者格式矽藻土

另一個問題。我的~/.ssh/config文件設定了以下條目:

Host <host>
User <user>
IdentityFile <path/to/public/key>

我沒有指定git為用戶的任何配置,但我可以git@host:repo毫無問題地進行克隆。顯然,我的 ssh 用戶端正在使用我的公鑰來存取伺服器,這就是為什麼矽藻土讓我克隆儲存庫,但是我的 ssh 客戶端如何知道使用僅為使用者<user>而不是使用者配置的公鑰git

答案1

Gitolite 和 ssh

限制使用者使用特定指令對於 gitolite 來說非常重要。
如果你讀過man sshd並尋找authorized_keys檔案格式,您將看到許多可以新增到公鑰行的選項,這些選項以各種方式限制傳入的使用者。特別要注意該command=選項,這意味著「無論傳入使用者要求做什麼,都強制執行此命令」。

另請注意,當authorized_keys 檔案中有許多公鑰(即行)時,每行可以有一組不同的選項和command=值。

如果沒有這個command=選項,ssh 守護程序只會給你一個 shell,這不是我們想要的 gitolite 金鑰(儘管我們很可能有其他用於取得 shell 的金鑰)。

這是 gitolite 發揮作用的支柱;請確保你理解這一點

這些command=使用您的公鑰名稱作為使用者名稱。

所以你所有的 ssh 查詢都是透過以下方式完成的:

  • 用戶 git
  • 一個公鑰,其名稱註冊在 .txt 檔案中的 command= 指令的參數中~git/.ssh/authorized_keys

至於user/repos,與 Gitolite 最接近的是野生回購與回購模式

repo    CREATOR/a[0-9][0-9]

相關內容