linux系统中搭建CS架构的Git服务器

一、首先在自己的服务器中安装Git

具体在linux系统中安装Git与后面怎么配置这里就不提了,看这边博客:https://blog.csdn.net/JJBOOM425/article/details/83411545

二、在服务器端创建管理Git仓库的用户

在服务器端的命令行中输入如下语句,创建一个git用户,并设置好该用户的密码,后面我们将git仓库的权限赋给git用户

$ useradd git
$ passwd git

三、在服务器端创建git仓库

这里我们先创建了一个 /home/data/git/gittest.git  目录,再使用 git init 指令将这个目录改变为git仓库,再进入到 /home/data/git 目录下,把gittest.git仓库的拥有者换成git用户。

这里我也尝试再客户端进行git clone指令,会报错,接下去我们来解决这个问题。

虽然不能克隆仓库,但是会跳出

The authenticity of host '10.1.18.14 (10.1.18.14)' can't be established.
RSA key fingerprint is SHA256:F8hGYvUSA0C6wiOQ6fx+ddguTwxZWEuyDsPrWT7Yt60.
Are you sure you want to continue connecting (yes/no)?

这里我们输入yes,会将一些信息写入到客户端的  ~/.ssh/known_hosts 目录中,保存的内容如下:


四、在服务器端git打开RSA认证

配置文件放在了 /etc/ssh/sshd_config 中,如下图,先看看该目录下是否有该目录:

sshd_config文件进行编辑,先看看如下的配置是否被注释,如果是将前面的 “#”删除,如下图:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

sshd_config修改保存后,重启服务 $ /etc/rc.d/init.d/sshd restart ,然后看配置中的 AuthorizedKeysFile 后面写着 .ssh/authorized_keys,所以得知公钥的存放路径是 .ssh/authorized_keys,实际上是  /home/.ssh/authorized_keys,由于管理 Git 服务的用户是 git,所以实际存放公钥的路径是 /home/git/.ssh/authorized_keys,我们查看该目录下在 /home/git/ 下是否有 .ssh 目录,没有则创建目录 .ssh与authorized_keys文件,创建步骤如下:

五、将客户端公钥导入服务器端 /home/git/.ssh/authorized_keys 文件

使用 $ ssh [email protected] 'cat >> .ssh/authorized_keys' < ~/.ssh/id_rsa.pub将客户端的公钥导入文件(注:这步在客户端中执行

执行以后,可以在服务端的/home/git/.ssh/authorized_keys中查看是否添加公钥,如下图:

六、在客户端中克隆服务器端的仓库

在客户端中使用指令 $ git clone [email protected]:/home/data/git/gittest.git 克隆仓库到客户端中:

如上,说我克隆了一个空的仓库,说明我们克隆成功。因为那个创建后我没有放任何东西,这样子就成功搭建了Git服务器。

猜你喜欢

转载自blog.csdn.net/JJBOOM425/article/details/83902971