0x01 前言

GitHub的免费代码托管服务是不允许将代码设为私有的,当然付费的费用也不贵,但因为众所周知的原因,访问GitHub的网络速度太慢了。

为了能在家里也能方便地使用git管理代码,那就配置一个git服务吧。

0x02 准备

我们只需要在系统中安装git就好了,非常方便:

0x03 用户

我使用SSH为git提供认证、加密,所以先添加相关的用户与用户组:

登入到gituser1用户,并创建SSH密钥:

然后将文件id_rsa.pub重命名为authorized_keys:

将私钥保存在本地,以便稍后使用:

返回到root用户,修改ssh配置文件:

然后在另一台机子上测试用户与SSH的配置是否有效。将刚才的私钥保存到另一台机子上并修改权限:

然后通过以下命令测试SSH是否有效:

确认一切正常后退出该账户,然后通过以下命令将私钥使用ssh-agent托管:

如果遇到以下错误,是因为ssh-agent服务还没启动,手动启动即可:

最后再次尝试登入gituser1用户,但这次不再需要手动指定私钥路径了:

0x04 git

完成用户的配置,接下来配置git仓库。首先建立一个用于存储git仓库的目录:

创建一个空的git仓库:

修正权限:

这样就完成了git服务器的配置。

0x05 使用

我们会到另一台机子上,通过以下命令即可clone git仓库:

因为这是刚创建的git仓库,所以里面没有文件,我们可以忽略上面的警告信息。我们来touch一个文件并push到master中:

查看分支情况:

0x06 结语

使用这种方法可以免去手动输入密码的步骤,因为使用了SSH密钥,还能提高安全性。还可以搭配自动化脚本来定时push,以便进行设备配置文件的定时备份。