Git服务器搭建 Ubuntu16.04

1.安装git和ssh

sudo apt-get install git
sudo apt-get install openssh-server openssh-client


2.增加git用户管理服务器,设置密码之后一直按回车键即可,

sudo adduser git

增加git用户后会生成文件夹/home/git


3.创建ssh证书认证文件

sudo mkdir /home/git/.ssh
sudo touch /home/git/.ssh/authorized_keys

临时修改authorized_keys文件的权限

sudo chmod 777 /home/git/.ssh/authorized_keys

把需要访问git服务器的客户端公钥id_rsa.pub的内容复制到authorized_keys文件

PS:客户端电脑如何生成公钥,以windows操作系统举例:

 安装git客户端

 运行git命令行

 运行:ssh-keygen -t rsa -c “你的邮箱地址

  在C:\Users\xxx\.ssh文件夹下会有一个id_rsa.pub文件(xxx为登录windows的当前用户名,从文件夹进去User可能显示为中文的“用户”)


4.修改authorized_keys文件的权限

sudo chmod 700 /home/git
sudo chmod 700 /home/git/.ssh
sudo chmod 600 /home/git/authorized_keys
sudo chown -R git:git /home/git
sudo chown -R git:git /home/git/.ssh
sudo chown -R git:git /home/git/.ssh/authorized_keys


5.为了安全考虑禁止登录git服务器的shell:

(1).先找到git-shell的位置:

which git-shell

在我电脑上为/usr/bin/git-shell

(2).修改passwd的权限

sudo chmod 777 /etc/passwd

(3).修改git的shell

/usr/bin/git-shell git:x:1004:1004:,,,:/home/git:/bin/bash改成:

git:x:1004:1004:,,,:/home/git:/usr/bin/git-shell

保存


6.git-shell-commands配置问题:

(1).把usr/share/doc/git/contrib/git-shell-commands拷贝到/home/git/

sudo cp -R /usr/share/doc/git/contrib/git-shell-commands /home/git/

(2).修改目录所有者为git

sudo chown -R git:git git-shell-commands

(3).增加执行权限

sudo chmod +x /home/git/git-shell-commands/*


7.建代码仓库

(1).创建仓库的目录

sudo mkdir /home/myRepo

(2).创建仓库

sudo git init --bare /home/myRepo/test.git
(3).修改权限为git

sudo chown -R git:git /home/myRepo/test.git

8.测试

在客户端git命令行界面运行以下命令,注意修改ip:

git clone git@192.168.0.111:/home/myRepo/test.git

没出错的话会有成功提示,test.git被拷贝到本地

猜你喜欢

转载自blog.csdn.net/zhangtao_heu/article/details/80950834