4

我通过 ssh 设置了一个 git 服务器

http://blog.commonthread.com/post/1034988660/setting-up-a-git-server

但是,我仍然可以通过 ssh 访问服务器并查看服务器上的所有文件夹。您通常如何保护服务器,以使 git 用户无法离开主目录并可能造成损坏?我读了一些关于 chroot 或 jail 的东西。或者将主目录的权限设置为 700。我想知道实现某些安全性的最简单方法以及如何做到这一点的详细信息。这是在 Centos Linux 服务器上。

有没有办法拒绝命令行访问,同时仍然允许用户从 git 推/拉?

4

2 回答 2

11

您应该将用户的 shell 设置为git-shell. 从文档(实际上,几乎整个手册页):

这旨在用作您希望限制为仅 GIT 拉/推访问的 SSH 帐户的登录 shell。它只允许执行实现拉/推功能的服务器端 GIT 命令。这些命令只能通过 -c 选项执行;外壳不是交互式的。

(Rup,在评论中,如果你刚刚用谷歌搜索过 git shell ......)

于 2010-06-25T15:13:52.563 回答
3

另一种方法是使用gitolitegitosis,它们都可以为您管理并且非常容易配置。

于 2010-06-25T18:48:17.023 回答