【Git】Centos6.5下简单部署Git服务器

1、安装git
Git官方网站git-scm.com中,没有给出Centos版本的安装案例,但没关系,我们手动编译安装也一样。准备好源码包,我选的1.9.0版本。
a) 将压缩包git-1.9.0.tar.gz放入任意目录,假如在usr/local目录下。
b) 运行解压缩命令:tar -zxvf git-1.9.0.tar.gz
c) 进入git源码目录:cd git-1.9.0
d) 执行三步常规安装命令:检测环境配置并且设置安装路径,编译,安装;
./configure --prefix=/opt/git
make
make install
e) 验证安装成功:git --version
如果输出:git version 1.9.0,说明安装成功。

2、添加一个针对git管理的系统用户
执行命令:sudo adduer git
这时会在home里面生成名为git的用户目录。
注:如果要完全删除git用户,可以执行:userdel -r git

3、配置git远程仓库
a) 在任意目录比如srv中新建一个repository空目录,用于存放所有的git仓库;
b) cd /srv/repository
c) 初始化一个空git仓库,git init --bare demo.git ,此时会生成1个demo.git目录
d) 为demo.git目录的所有者指定git用户:chown git:git -R demo.git

4、设置SSH安全认证
客户端与服务器的数据通信需要安全通道,有两种方式:验证git用户密码和基于RSA的公钥加密算法认证,出于对系统安全性考虑以及保证每个仓库的私密性,通常采用公钥认证的方式,并且关闭密码验证。
Centos6.5中,默认ssh的密码验证是打开的,而RSA认证是关闭的,所以需要先做反向操作,进入/etc/ssh,打开配置文件sshd_config:
a) 找到PasswordAuthentication节点并设置为no;
b) 开启RSA认证,将前面的#去掉,并确保如下配置:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

c) 重启SSH服务使配置生效:service sshd restart

5、管理公钥
上面的AuthorizedKeysFile .ssh/authorized_keys其实就是SSH连接时验证公钥的相对路径,由于我们使用的是git用户,那么当我们访问git服务器的时候,ssh连接会在git用户目录中查找是否有该路径,所以我们进入到home/git,创建一个.ssh的空目录,并在里面再创建一个authorized_keys的文档,这样ssh根据AuthorizedKeysFile的值就能找到公钥,只有能够解密的私钥才是安全可信任的客户端,所以我们需要事先将可信任的客户端公钥复制到authorized_keys中,复制多个公钥需要强制换行来识别。

6、克隆仓库
基本上配置完这些,就可以实现远程克隆了,客户端执行命令:git clone [email protected]:/srv/repository/demo.git

你可能感兴趣的:(【Git】Centos6.5下简单部署Git服务器)