ssh对于远程git存储库来说太“强大”了吗?如何设置权限?

时间:2012-08-15 10:08:25

标签: git permissions ssh

我在suse框上创建了一个ssh服务器,基本上我只是希望它使用ssh作为git服务器,但是当我使用ssh name @ server登录时,我可以查看我的home / repo目录,这是正常的,但是我甚至可以检查来自其他用户的文件,例如home / steve,我不想要它,如何设置用户repo只能访问git目录?说home / repo / repository.git?或只是来自/ home / repo的文件?

我已经从Yast2-sshd配置工具中禁用了“permit Root Login”(基本上只是一个编辑/ etc / sshd / sshd_config的工具)“,但这似乎还不够。

2 个答案:

答案 0 :(得分:1)

如果你set the user's shell to be git-shell,他们只能运行git命令。

如果您不需要细粒度的权限,那么you don't need gitolite or similar

答案 1 :(得分:0)

ssh太强大了,因为它允许交互式会话 giZm0 mentionsgitoliteauthorization layer,可以利用ssh提供的身份验证,并允许对您的存储库进行细粒度的访问控制。
它只是一个perl脚本,它可以将自己设置在~/.ssh/authorized_keys文件中以拦截任何git命令,并根据简单的文本配置文件验证它们。 这利用了ssh功能(与git无关),称为forced command

注意:gitolite也可以与httpd服务器链接:有关详情,请参阅“Why do you need Gitosis or Gitolite?”或“git on HTTP with gitolite and nginx”。