繁体   English   中英

在 windows 上保护 Git 服务器?

[英]Securing Git server on windows?

使用 msysgit 和 copssh,是否可以保护 ssh 部分,使其只能访问相关的 git 可执行文件并且还被限制只能访问一个文件夹?

我有一种感觉,windows 上的 git 服务器将比 svn 服务器(如视觉 ZAF04A1AA0E00F4AAAEEZ760)开放得多。 我希望被证明是错误的。

我将为您的中央 Git 存储库使用 Linux 服务器。 安装 gitolite。 这将使您能够管理分支权限等。

更新:

根据您最近的评论,只需 go 并在 1 分钟内完成。 如果您担心用完他们提供的 500MB 空间,可以将大型非私有工件存储为可以托管在 github 上的子模块。

希望这可以帮助!

在 Windows 上,我发现 Apache 和 Smart Http(git-http 后端)是托管 Z7B065333Z1 服务器的最佳方式。

https://web.archive.org/web/20100308035130/http://progit.org/2010/03/04/smart-http.html

And coming to access control, I would advice you to keep it simple and have an access conf file svn or even gitolite / gitosis and write simple hooks in the Git repo ( in Python, Ruby, etc. )

这些钩子将为您提供对 Git 存储库的很好的控制。 您可以控制每个分支的签入,签入特定文件夹等。

查看 git 挂钩手册页。 pre-receiveupdate是您可以为此目的使用的钩子。

Look at this awesome chapter from Pro Git on how to use Git hooks on the server side to enforce policy - https://git-scm.com/book/en/v2/Customizing-Git-An-Example-Git-Enforced-政策

您可以轻松调整它们并添加功能以满足您的目的。

我非常推荐使用其中一个 Git-HTTP 项目。 请参阅我的答案: https://serverfault.com/questions/58425/setting-up-git-repository-on-remote-windows-server/163065#163065

您正在尝试使 Windows 的行为类似于 UNIX。 更好的 go 与流程,并使用基于 .NET 的解决方案作为 Git 服务器后端。


当您处理一个小型 2 人项目时(正如您在评论中提到的),您还可以在 Windows 网络共享上托管 git 存储库。 它可以正常工作,您可以在 git 客户端中克隆 UNC 路径(或映射的驱动器号)。

对于 UNC 路径,当您使用斜杠而不是反斜杠时(即//server01/git/myrepos.git )。

当我开始考虑设置企业 git 服务时,我们有以下要求: 1. 将 git 存储库作为项目管理,我们可以在项目级别提供自助访问控制。 2. LDAP 登录集成 3. 管理工作量低

我评估了香草 git、git + git-http、gitolite。 这些解决方案需要管理员来管理访问控制。 如果团队很大,这将是一项重大的努力。 如果团队很小(5-10 个开发人员),vanilla git 是可以的。

我看了github企业,用github,后来用bitbucket。 我们最终购买了 bitbucket 并启动并运行了本地版本。 bitbucket 符合我们的所有要求。 此外,我们可以选择性地将部分 AD 组同步到 bitbucket 并在组级别管理访问。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM