簡體   English   中英

為每個git repo配置ssh密鑰

[英]Configure ssh key per git repo

我按照貝婁教程使用ssh設置git服務器。

https://git-scm.com/book/en/v2/Git-on-the-Server-Setting-Up-the-Server

只要我是唯一使用git repos的人,就可以了。 現在,我有多個用戶需要訪問git服務器上的特定存儲庫。 上述方法允許所有用戶訪問服務器上的所有存儲庫。

如何允許每個用戶使用各自的ssh密鑰進行回購?

假設它在Unix機器上,則git只是系統上的用戶,並且將強制使用Unix訪問控制。

  1. 在系統上創建第二個git用戶,例如git2
  2. 將新用戶的密鑰添加到第二個git用戶的authorized_keys文件中,而不添加到第一個git用戶的authorized_keys文件中。 (可選)將您自己的密鑰添加到第二個git用戶的authorized_keys文件中。
  3. 將第二個用戶的存儲庫初始化為第二個git用戶。 確保在原始存儲庫上設置了權限,以使第二個git用戶無法訪問它們。 這將需要對Unix shell,Unix文件權限和chmod命令有一些了解。
  4. 在處理第二個項目時,請使用第二個git用戶,例如git2@gitserver:/opt/git/project.git

為了擴展到多個用戶,您將最終為每個項目(或項目集)設置1個git用戶。 對於許多用戶,您最終將為每個用戶設置一個git用戶帳戶,並使用組文件權限來控制對共享存儲庫的訪問。 后者將需要使用git init --shared=xxx選項。

Git不會像這樣進行倉庫級別的訪問。 查看類似gitoliteGitlab CE之類的內容,以通過SSH密鑰管理存儲庫訪問。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM