搭建自己的Git服务器

众所周知,github是一个免费托管开源代码的远程仓库,那么要想自己搭建一台Git服务器作为私有仓库使用,要怎么操作呢?

搭建环境:centos 6.4 

1.在线安装git      yum -y install git 

2.查看版本,安装成功   git  – – version 

3.添加git用户   adduser git 

4.初始化git仓库 /data/git/ [可以任意选择目录]来当做一个git仓库 

执行git初始化命令 ,会创建一个裸仓库,裸仓库没有工作区

[root@localhost git]# git init --bare gitdemo.git 
Initialized empty Git repository in /data/git/gitdemo.git/
并修改gitdemo.git 所属:
chown git:git gitdemo.git

5. 到这里基本完成,你可以去本地客户端 clone 试一试

$ git clone git@192.168.1.2:/data/git/gitdemo.git
查看是否可以克隆下来
很有可能出现的问题:提示你输入密码:
$ git@192.168.1.2's password:
擦,密码?简直是一脸懵逼!,没关系,可以通过SSH的公钥来完成验证!

6. 如果你之前生成过 SSH公钥,这里要重新在客户端用命令生成一遍,【要不然搞到天黑都提示输入密码!真是坑啊!!!】也就是无论你有没有生成过ssh公钥,都得去生成一遍!!!【切记!】

1) 创建SSH Key

$ ssh-keygen -t rsa -C "youremail@example.com"

把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。

如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub就是要找的公钥啦!

7. 最容易漏掉,非常重要的一步,开启【Git服务器打开RSA认证

在Git服务器上添加你的公钥用来验证你的信息。故必须要开启【Git服务器RSA认证】 将/etc/ssh/sshd_config中将RSA认证打开,

在服务器上找到【/etc/ssh/sshd_config】 vim 编辑模式,将这三项前面的#去掉即可

RSAAuthentication yes 
PubkeyAuthentication yes 
AuthorizedKeysFile .ssh/authorized_keys

8. 万事俱备只欠东风啦,
公钥要存放在.ssh/authorized_keys文件中。所以我们要在/home/git下创建.ssh目录,然后创建authorized_keys文件,并将刚生成的公钥导入进去。
注意权限问题:

将/home/git  所属全部改为git
# chown git:git  -R  git/
# chmod 700 .ssh
# chmod 600 .ssh/authorized_keys

9. 禁用git用户的shell登陆

git:x:503:503::/home/git:/bin/bash
改为:
git:x:503:503::/home/git:/sbin/nologin
或:
git:x:503:503::/home/git:/usr/bin/git-shell

注:CSDN博客:在CentOS下搭建自己的Git服务器

原创文章,转载请注明: 转载自HSBLOG

本文链接地址: 搭建自己的Git服务器