下面我们以centos系统为例搭建一个git私服:
1.安装git
yum install -y git
2.选择一个文件夹,将其初始化成一个中心远程仓库
git init --bare learngit.git
我这里的位置是:/usr/local/src/git,文件夹位置可自行选择
3.创建一个用户,并授权
adduser git
chown -R git:git learngit.git//-R是递归授权
4.在客户端所在的服务器上生成密钥(这样就不需要密码了)
cd /root/.ssh
ssh-keygen -t rsa -C "13376157767@163.com"
5.打开git服务器上RSA认证
vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
6.将步骤4中生成的公钥添加到/home/git/.ssh/authorized_keys中即可
7.在客户端上选择一个文件夹,连接远程仓库
git clone git@192.168.56.101:/usr/local/src/git/learngit.git
ip和目录根据实际情况修改
8.禁止git用户的shell登陆
vi etc/passwd
将
git:x:1001:1001:,,,:/home/git:/bin/bash
改成
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell