1、编译安装最新版git及创建用户
# 创建一个git用户组和用户,用来运行git服务$ groupadd git
$ adduser git -g git
禁止git用户登录:修改/etc/passwd文件,修改(注意:如果安装了最新版的git的话一定要用whereis查找一下git-shell的路径,保证路径正确)
# 找到这句:
git:x:503:503::/home/git:/bin/bash
# 改为:
git:x:503:503::/home/git:/bin/git-shell
2、创建证书登录在文件/etc/ssh/sshd_config中添加下列三行内容:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
服务端运行:
$ mkdir /home/git/.ssh
$ chmod 700 /home/git/.ssh
$ touch 700 /home/git/.ssh/authorized_keys
$ chmod 600 /home/git/.ssh/authorized_keys
$ chown -R git:git /home/git/.ssh/
在客户端运行:$ ssh-keygen -t rsa -C "youremail@example.com"
将生成的id_rsa.pub中的内容拷贝到服务器文件/home/git/.ssh/authorized_keys3、初始化仓库
$ cd /home
$ mkdir gitrepo
$ chown git:git gitrepo/
$ cd gitrepo
# 创建一个空的Git仓库,服务器上的Git仓库通常都以.git结尾
$ git init --bare project.git
# 将仓库所属用户改为git
$ chown -R git:git project.git
4、克隆仓库验证$git clone git@120.77.144.110:/home/gitrepo/project.git