安装git
通过yum安装git
1
yum install git
查看git是否安装成功
1
git --version
安装成功的会返回git版本信息
添加git的管理用户
新建git用户和设置密码
1
2
3
4adduser git
#adduser后的git是用户的名字,为了以后配置方便最好设为git
passwd git
#执行命令后会提示输入密码,输入两次后就行了进入服务器home目录下通过ll命令查看是否存在名为git的文件夹,存在的话说明
配置服务器的SSH访问
- 切换到git账号,并创建ssh的默认目录和校验公钥的配置文件
1
2
3
4
5
6
7
8
9
10
11su git
#切换到git用户,最好要切换,不然后面会出现问题
cd /home/git
mkdir .ssh
#创建.shh的配置文件,如果存在该文件夹就不用创建
cd /home/git/.ssh
touch authorized_keys
#进入刚创建的.ssh目录并创建authorized_keys文件,此文件存放客户端远程访问的 ssh的公钥
chmod 700 /home/git/.ssh/
chmod 600 /home/git/.ssh/authorized_keys
#设置权限,此步骤不能省略,而且权限值也不要改,不然会报错
服务器添加客户端公钥
- 先进入客户端用户主目录检查是否已经存在ssh公钥和私钥
Windows系统的ssh公钥和私钥一般放在C:\Users\ASUS.ssh目录下,进入后会看到这两个文件
没有的话就在客户端创建ssh私钥1
ssh-keygen -t rsa
输入命令后一直按回车默认就行了,创建成功后C:\Users\ASUS.ssh就会存在公钥文件is_rsa.pub
- 拷贝公钥到服务器中
最简单的方式就是直接用写字板打开is_rsa.pub,复制里面的内容再粘贴到服务器中之前创建的authorized_keys文件中
完成这些步骤后客户端就可以直接通过ssh用git账号登录服务器(这样登录不安全,后面会添加控制)1
2
3ssh git@server_ip
#server_ip为服务器的ip地址或是域名
#第一次会出现警告,输入yes即可。
正常情况下是不需要输入密码的,如果连接时要输入密码请返回前几点看有什么遗漏,并且成功的话会出现以下显示
服务器上创建测试git仓库
1 | su git |
- 客户端测试连接git远程仓库
1
git clone git@server_ip:/home/git/test.git
如果能克隆下来说明已经成功了(不能成功请仔细查看错误信息)
禁止客户端shell登录
因为前面我们添加了客户端的ssh的公钥到远程服务器,所以客户端可以直接通过shell远程登录服务器,这不安全,因此禁用shell登录
- 修改/etc/passwd文件
1
2
3
4
5
6
7
8vim /etc/passwd
#通过vim修改passwd文件
# 找到这句, 注意1000可能是别的数字
git:x:1000:1000::/home/git:/bin/bash
# 改为:
git:x:1000:1000::/home/git:/bin/git-shell