环境:Centos7
一、 服务端安装
第1步:先安装git工具git -y install git
输入git命令测试,若出现相应的提示说明安装成功。
第2步:新建一个用户起名gitadduser git
第3步:在/home/git/目录下创建一个名为.ssh的文件夹,在其.ssh目录中新建一个文件名为authorized_key,用于后面保存客户端提供的公钥
cd /home/git
mkdir .ssh
touch authorized_key
第4步:在git用户目录创建一个仓库,名为project.git,在初始化此仓库
cd /home/git
mkdir project.git
git init --bare project.git
第5步:将git用户目录中的仓库和ssh目录的所有者和所属组都设置为git
cd /home/git
chown -R git.git project.git/
chown -R git.git .ssh/
第6步:修改sshd_config文件,打开RSA认证vim /etc/ssh/sshd_config
开启三项:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
为了安全,禁止git用户进行shell登录
vi /etc/passwd 注释 ##git:x:1000:1000::/home/git:/bin/bash 改为 git:x:1000:1000:git version control:/home/git:/usr/bin/git-shell
至此git服务端安装完成。
现在来测试是否安装成功,这里以window系统测试为例
二、客户端测试
需要在客户端安装git工具,linux系统则不需要,window系统需要
下载地址:https://git-scm.com/download/win
第1步:生成私钥和公钥,使用命令 ssh-keygen -t rsa , 一路回车即可,会在当前用户的.ssh目录生成两个文件:
私钥:id_rsa
公钥:id_rsa.pub
将公钥文件(id_rsa.pub)交给git服务器的管理员,会将此公钥内容添加到authorized_key文件中,一行一个公钥。
第2步:克隆git仓库,到本地目录测试
git clone git@xxx.xxx.xxx.xxx:/home/git/project.git ./
git add .
git commit -m 'first commit'
git push
其中xxx.xxx.xxx.xxx为git服务器的ip地址
注:若提示需要密码,则检查上面的公钥和私钥是否配置成功