加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 通过SSH访问远程Git存储库时使用su / sudo

发布时间:2020-12-13 19:29:22 所属栏目:Linux 来源:网络整理
导读:假设 Linux服务器上有一个远程 Git存储库R. R由用户U拥有,对于该用户U,根本不允许通过SSH进行远程登录(例如,根).基于密码和基于密钥的身份验证均不适用于该用户.但是,允许的是以不同的用户身份登录,然后使用su或sudo以U发出命令. 是否可以将这两种方法结合起
假设 Linux服务器上有一个远程 Git存储库R. R由用户U拥有,对于该用户U,根本不允许通过SSH进行远程登录(例如,根).基于密码和基于密钥的身份验证均不适用于该用户.但是,允许的是以不同的用户身份登录,然后使用su或sudo以U发出命令.

是否可以将这两种方法结合起来,以便Git在远程服务器上使用su或sudo来访问存储库?

或者,是否有另一种方法来访问R而不更改其访问权限或启用U的SSH登录?

P.S.:我不介意手动输入密码,例如在su提示下,只要Git处理剩下的事情.

编辑:

从评论中可以看出,我需要澄清我想要做这样的事情的理由. R跟踪的文件是有问题的服务器正在使用的系统文件 – R不是裸存储库.这意味着无法真正移动存储库,而不是没有大量的诡计.

让Git使用sudo将允许使用保护这些文件的相同安全模型来访问R,而不是通过必须单独配置和同步的单独途径.

解决方法

更容易建立另一个监听器而不是sshd dameon:设置一个Apache,其中:

>可以以root身份运行
>可以将git查询重定向到git-http-backend脚本,这允许通过http的git命令(称为smart http,documented here)

这样,你不必担心sudo和su.

如果需要,您可以将其与身份验证步骤结合使用.

<Location /git>
  AuthType Basic
  AuthName "Private Git Access"
  AuthUserFile "/etc/git-auth-file"
  Require valid-user
</Location>

你甚至可以添加authorization with gitolite.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读