在CentOS7上搭建git服务器,
1.在Linux上安装git
yum install -y git
验证是否安装成功,出现版本号即成功
git --version
2.创建版本库和用户
创建用户组git和用户git
groupadd git adduser git -g git passwd git
找一个路径创建版本库取名为github.git,
新建个路径
cd /home/git/ mkdir github cd github
建新库 git init --bare github.git
所属用户改为git
chown -R git:git github.git
3.开启RSA验证
创建证书,创建此文件/home/git/.ssh/authorized_keys,并把客户端的公钥放到文件中,一行一个chmod修改权限,不然git账号不能访问。
cd /home/git/ mkdir .ssh chmod 700 .ssh touch .ssh/authorized_keys chmod 600 .ssh/authorized_keys
开启 SSH 的 RSA 公钥认证并关闭密码认证登陆
vim /etc/ssh/sshd_config
在文件中添加这4句,如果是被注释了,就取消注释。
HostKey /etc/ssh/ssh_host_rsa_key # 主机私钥文件位置 RSAAuthentication yes # 开启 RSA 认证 PubkeyAuthentication yes # 开启公钥认证 AuthorizedKeysFile .ssh/authorized_keys # 认证公钥文件位置
在文件末尾加上下面2句,关闭密码认证登陆
Match User git, Group git
PasswordAuthentication no
重启SSH服务
systemctl restart sshd
客户端上克隆远程库,git是账号@服务器IP:之后是版本库的路径,在创建是会提示。
git clone git@172.20.170.11:/home/git/github/rep.git
如果客户端出现这个问题,就检查上面出现的所有路径文件git账号是否都有wrx权限。