Git 服务器是否需要 Kerberos 身份验证?

Git 服务器是否需要 Kerberos 身份验证?

我有一个 Git 服务器,我想让所有使用 Kerberos 登录的用户都可以使用它。

例如:如果用户有有效的 Kerberos 票证,她就可以开始推送到 Git,而无需提供任何用户名/密码。

用 Git 能做到这一点吗?
我所能找到的只有Git 邮件列表上的未解答问题(带有 http://),以及项目显示其已过期(使用 git://)。

服务器是 Ubuntu 2012.10,但如果需要,我可以将其移至 Windows Server 2012。
我可以指定在客户端使用哪种软件。

答案1

这里是过时项目的作者;最好的选择是配置 SSH 以接受 kerberos 票证进行身份验证——它很简单并且在互联网上有很好的记录。

如果出于某种原因这不能满足你的要求,你可以重新使用git-http-后端通过 http{,s} 为 git 提供服务,然后是 apache 的mod_auth_kerb验证对此的访问权限。我曾成功使用过此方法,但设置起来很麻烦。

(mod_auth_kerb 在 ubuntu 上是 libapache-mod-auth-kerb,git 自带 git-http-backend)

答案2

您可以让服务器用户使用 kerberos 进行 SSH(只需在 Google 上搜索 kerberos 和 SSH),然后当您使用 git+ssh 时,git 也将与那些 kerberos 用户一起工作。

相关内容