Bac*_*ach 15 ssh user-management git
我在 SunOS 服务器上托管了一个 git 存储库,我通过 ssh 远程使用它
git clone ssh://myUser@mydomain.com/path/to/git
Run Code Online (Sandbox Code Playgroud)
现在我需要添加更多用户才能访问该存储库,但不确定如何。
我已向ssh添加了一个testUser,但我似乎无法将该用户权限限制为仅使用 git。
testUser能够通过 ssh 访问并浏览整个服务器。
如何创建只能远程访问 git、克隆/拉/推等的用户...
谢谢
chu*_*ckx 15
你基本上有两个选择。
正如 topdog 所提到的,当你在服务器上创建用户时,将他们的 shell 设置为git-shell(这里的书籍条目)。这将允许用户通过 SSH 登录,但它不会运行普通的、功能齐全的 shell(例如 sh、bash 等),而是运行 git-shell,它只提供对 git 功能的访问。
或者,您可以通过其他协议使您的存储库可用,例如 TCP(使用git-deamon)或 HTTP/HTTPS。不过,我只推荐这种只读访问方案。
您提到希望为您的用户支持“推送”功能,因此您真的应该选择选项 #1。
Chr*_*sen 12
您可能会考虑在单个用户下使用gitolite,而不是设置多个git-shell用户(以及所需的组和组权限,以便他们可以共享对存储库的访问权限)。
gitolite一个单一的,普通用户下运行在服务器上,使用SSH公钥来区分访问Git仓库(见“如何gitolite使用SSH ”对于一些怎样的细节gitolite做它基于SSH的标识)。 gitolite提供每个存储库、每个分支,甚至一些每个路径的访问控制。
| 归档时间: |
|
| 查看次数: |
22913 次 |
| 最近记录: |