自建Git服务笔记(基于CentOS 7)

1,安装Git所需依赖包

    # yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel

    # yum install gcc perl-ExtUtils-MakeMaker

2,卸载CentOS自带的git

    # yum remove git

3,下载较新Git版本

    # mkdir /usr/src/tools

    # cd /usr/src/tools

    # wget https://www.kernel.org/pub/software/scm/git/git-2.9.5.tar.gz

    # tar -zxvf git-2.9.5.tar.gz

4,安装Git并添加到环境变量中,Git安装路径为/usr/local/git

    # cd git-2.9.5

    # make prefix=/usr/local/git all

    # make prefix=/usr/local/git install

    # echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc

    # source /etc/bashrc

    完毕,查看git版本号

    # git --version

5,创建用户git,用来运行Git服务

# adduser git

# usermod -G git git

# su git

# cd /home/git/

# mkdir .ssh

# cd .ssh

# touch authorized_keys

# chmod 700 /home/git/.ssh

# chmod 600 home/git/.ssh/authorized_keys

在git用户的home目录(/home/git/)创建一个.ssh的目录,将协同工作人员的SSH公钥添加到该目录的authorized_keys文件中。

6,收录客户端的SSH公钥到/home/git/.ssh/authorized_keys文件中

    客户端使用命令 ssh-keygen -t rsa -C "你的email地址" ,会在~/.ssh/id_rsa.pub生成SSH公钥,复制给管理员即可。

7,配置服务器端ssh服务

    # vim /etc/ssh/sshd_config

    找到以下三段并去掉前面的#号

    RSAAuthentication yes

    PubkeyAuthentication yes

    AuthorizedKeysFile /home/git/.ssh/authorized_keys  #你的authorized_keys所在路径

8,初始化git仓库(裸库)

    # cd /home/git

    # mkdir repositories

    # cd repositories/

    # mkdir project.git

    # git init --bare project.git

    # chown -R git:git project.git/

9,禁用git用户shell登录

    # vim /etc/passwd

    git:x:1001:1001:,,,:/home/git:/bin/bash

    改为

    git:x:501:501::/home/git:/bin/bash

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容