加入收藏 | 设为首页 | 会员中心 | 我要投稿 财气旺网 - 财气网 (https://www.caiqiwang.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

Linux命令环境下基于HTTP协议安全认证的GIT设置

发布时间:2022-06-17 03:02:31 所属栏目:教程 来源:互联网
导读:在命令行的Linux环境下,只能使用 HTTP 协议进行安全访问,本文我们来看看在Linux下基于HTTP协议带用户认证的GIT开发环境设置. Git 的访问可以采用 HTTP 或 SSH 协议安全的访问,通常我们使用 gitlib 进行 Web 管理,但是在 Linux 命令行开发环境下,基本都是使用
  在命令行的Linux环境下,只能使用 HTTP 协议进行安全访问,本文我们来看看在Linux下基于HTTP协议带用户认证的GIT开发环境设置.
 
  Git 的访问可以采用 HTTP 或 SSH 协议安全的访问,通常我们使用 gitlib 进行 Web 管理,但是在 Linux 命令行开发环境下,基本都是使用 SSH 协议,只需要在 gitlib 里面配置好相应的 SSH Key 就可以.
 
  由于现在开发环境的特殊情况,我们需要在 Linux 命令行开发环境下,不能使用 SSH 方式,而只能使用 HTTP 协议进行安全访问,并且需要对开发者进行认证,并且开发者在本地开发环境中的用户名和密码需要加密存储.
 
  接下来我就简单介绍我们的开发团队是如何在 Linux 命令行环境下进行 GIT 开发环境配置.
 
  1.创建 用户名/密码 文件(明文密码),在自己的 $HOME 目录下,编辑 .netrc 文件,内容如下:
 
  machine git.phpfensi.com
      login xxx@phpfensi.com password xxxxxx
  2.创建 GnuPG 密钥,在自己的$HOME 目录下,执行命令:
 
  gpg --gen-key
 
  注:默认回车即可,RSA密钥选择1024,2048太慢,但安全性好,可以使用以下命令查看已生成的密钥:
 
  gpg --list-key
 
  3.加密 用户名/密码 文件,在自己的 $HOME 目录下,执行命令:
 
  gpg -o ~/.netrc.gpg -er yourname ~/.netrc
 
  注:执行完成后,可以删除明文密码文件 .netrc
 
  4.设置用户的 Git 配置
 
  在自己的 $HOME 目录下,执行命令:
 
  #此方法会缓存用户名/密码,不需要每次都输入
  git config --global credential.helper 'store'
  
  #此方法需要每次都输入用户名/密码
  #git config --global credential.helper 'netrc -f ~/.netrc.gpg -d'
  此时可以编辑 .gitconfig 文件,填写更多信息:
 
  [user]
      name = XXX
      email = xxx@xxx.com
  [core]
      excludesfile = /home/xxx/.gitignoreglobal
  [credential]
      helper = store
      #helper = netrc -f ~/.netrc.gpg -d
  5.开始 GIT 环境:
 
  git clone http://git.xxxxx.net:port/project/my_project.git
 
  注:需要使用新版本Git(我使用的是2.2.2),同时将 git-credential-netrc 脚本拷贝到Git安装目录(libexec/git-core).
 
 

(编辑:财气旺网 - 财气网)

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