1.环境配置说明

  1. 服务器 CentOS 7 + gitgit version 1.8.3.1
  2. 客户端 Windows10 + SourceTree

2.安装 Git

服务器端安装:

  1. sudo yum -y install git

查看安装版本

  1. #git --version
  2. git version 1.8.3.1

客户端安装

下载 SourceTree for Window 下载地址:https://www.sourcetreeapp.com

3.git 服务器端创建 git 用户,用来管理 Git 连接使用服务,并为 git 用户设置密码,并且注册此用户无许登录SSH权限

  1. [root@localhost home]#id git
  2. id: git: no such user
  3. [root@localhost home]#groupadd -g 108 -r git && useradd -s /sbin/nologin -u 108 -r -g git git
  4. [root@localhost home]#passwd git

4.在服务器端创建 Git 仓库

  1. [root@localhost home]#mkdir -p /opt/data/test.git
  2. [root@localhost home]#git init --bare /opt/data/test.git
  3. Initialized empty Git repository in /opt/data/test.git/
  4. [root@localhost home]#chown -R git:git /opt/data/test.git

5.使用SourceTree 客户端打开终端 创建SSH公钥与私钥证书

1.创建证书,请在注明邮箱地址填写自己使用使用邮箱,因后面clone 会有认证

  1. $ssh-keygen -t rsa -C "请输入邮箱地址"
  2. Generating public/private rsa key pair.
  3. Enter file in which to save the key (/c/Users/Steven/.ssh/id_rsa):直接回车
  4. Enter passphrase (empty for no passphrase):可输入密钥密码
  5. Enter same passphrase again:确定密钥密码
  6. Your identification has been saved in /c/Users/Steven/.ssh/id_rsa. 密钥所存放的位置
  7. Your public key has been saved in /c/Users/Steven/.ssh/id_rsa.pub.
  8. The key fingerprint is:
  9. SHA256:ryzmTky3Ar0l+gHX8m53VPJ0iwRuez1YgDlzomaaPtM
  10. 完整密钥这里会有你的邮箱地址
  11. The key's randomart image is:
  12. +---[RSA 2048]----+
  13. | o |
  14. | B o |
  15. | o * . |
  16. | . . + o..o..|
  17. | o * S . o==..|
  18. | B X o ..+.+ |
  19. | . B + ... .|
  20. | ooO.E. . |
  21. | ++o*. . |
  22. +----[SHA256]-----+

2.在服务器上配置SSH 认证支持密钥

进入vim  /etc/ssh 目录,编辑 sshd_config,打开以下三个配置的注释:

  1. RSAAuthentication yes
  2. PubkeyAuthentication yes
  3. AuthorizedKeysFile .ssh/authorized_keys

保存之后并重启 sshd 服务:

  1. [root@localhost home]#systemctl restart sshd

因 AuthorizedKeysFile sshd_config 配置公钥的存放路径是 .ssh/authorized_keys,但实际上是 $Home/.ssh/authorized_keys,由于管理使用Git 服务的用户是 git,所以实际存放公钥的路径是 /home/git/.ssh/authorized_keys,同时把上一步所配置得到的id_rsa.pub 上传到服务器端

  1. [root@localhost git]# pwd
  2. /home/git
  3. [root@localhost git]# mkdir .ssh
  4. [root@localhost git]# ls -a
  5. . .. .bash_logout .bash_profile .bashrc .gnome2 .mozilla .ssh id_rsa.pub

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

  1. [root@localhost git]#cat id_rsa.pub >> /home/git/.ssh/authorized_keys

重要:

修改 .ssh 目录的权限为 700

修改 .ssh/authorized_keys 文件的权限为 777

  1. [root@localhost git]# chmod 700 .ssh
  2. [root@localhost git]# cd .ssh
  3. [root@localhost .ssh]# chmod 777 authorized_keys

 

.客户端 SourceTree clone 远程仓库

重点注意:如果SSH 修改默认端口,配置方式跟默认并不一样

正常未修改SSH 端口:

  1. git clone git@192.168.10.10:/opt/data/test.git

修改SSH端口配置方式

  1. ssh://git@192.168.10.10:32569/opt/data/test.git

以上配置完成可正常使用

参考:在CentOS下搭建自己的Git服务器

Linux 环境 搭建Git 服务器,并且修改SSH端口使用的更多相关文章

  1. Windows/Linux 环境搭建Git服务器 + vs2012集成git

    1. 下载.安装Git 我的系统是Windows 7,需要安装Git for Windows. 下载地址: http://code.google.com/p/msysgit/downloads/lis ...

  2. 【转】在Linux下搭建Git服务器

    在 Linux 下搭建 Git 服务器 环境: 服务器 CentOS6.6 + git(version 1.7.1)客户端 Windows10 + git(version 2.8.4.windows. ...

  3. 【转】Linux环境搭建FTP服务器与Python实现FTP客户端的交互介绍

    Linux环境搭建FTP服务器与Python实现FTP客户端的交互介绍 FTP 是File Transfer Protocol(文件传输协议)的英文简称,它基于传输层协议TCP建立,用于Interne ...

  4. 在linux中搭建git服务器

    个人觉得, 以下搭建git服务器的过程就像是在linux增加了一个用户, 而这个用户的登录shell是 git-shell, 太刨根问底的东西我也说不清楚, 还是看下面的过程吧. 过程参考了网上的文章 ...

  5. Linux Ubuntu搭建git服务器

    1. 安装 openssh-server ,用于创建SSH服务. sudo apt-get install openssl-server 使用命令ps -e|grep ssh,查看ssh服务是否启动. ...

  6. 在 Linux 下搭建 Git 服务器

    环境: 服务器 CentOS6.6 + git(version 1.7.1)客户端 Windows10 + git(version 2.8.4.windows.1) ① 安装 Git Linux 做为 ...

  7. 在Linux下搭建Git服务器的方法是什么样?

    第一步 安装git:可以通过命令的方式快速安装,不同的linux的安装方法可能不一样,我的是采用的yum方法.ubuntu可以用apt-get命令.sudo yum install git 第二步 添 ...

  8. linux 简单搭建git服务器

    如果使用git的人数较少,可以使用下面的步骤快速部署一个git服务器环境. 1. 生成 SSH 公钥 每个需要使用git服务器的工程师,自己需要生成一个ssh公钥进入自己的~/.ssh目录,看有没有用 ...

  9. 在Linux下搭建Git服务器步骤

    环境: 服务器 CentOS6.6 + git(version 1.7.1) 客户端 Windows10 + git(version 2.8.4.windows.1)  ① 安装 Git Linux ...

随机推荐

  1. Qt QString 和 LPCWSTR 的相互转换

    在windosw 编程中,常用到LPCWSTR 变量,QT中最常用到QString,下面提供QString和LPCWSTR 相互转换的方法 LPWSTR 转换成QString LPCWSTR str; ...

  2. java中集合,数组,字符串相互转换

    数组转List String[] staffs = new String[]{"Tom", "Bob", "Jane"}; List sta ...

  3. BZOJ2733 [HNOI2012]永无乡(并查集+线段树合并)

    题目大意: 在$n$个带权点上维护两个操作: 1)在点$u,v$间连一条边: 2)询问点$u$所在联通块中权值第$k$小的点的编号,若该联通块中的点的数目小于$k$,则输出$-1$: 传送门 上周的模 ...

  4. Durandal入门

    参考:http://www.360doc.com/content/14/1223/11/13819_435123743.shtml 示例代码下载地址:http://durandaljs.com/ver ...

  5. [USACO09DEC]雪橇Bobsledding(贪心)

    https://www.luogu.org/problem/P2968 题目描述 Bessie has entered a bobsled competition because she hopes ...

  6. 二、linux-mysql -cmake方式安装mysql 5.5

    1.安装解压cmake包  cmake软件cd /home/oldboy/tools/tar xf cmake-2.8.8.tar.gzcd cmake-2.8.8./configure#CMake ...

  7. listening-conversation|信息简写|Generally|回答|矛盾

    听力可以刷分,但是要求高.听力流程是听.笔记.读题和确定答案,不能回看.Conversation快速且不完整.素材内容主要是生命科学,社科(人类学:考古学),艺术,自然科学(地质). 难点分析: 词汇 ...

  8. Zabbix 监控sqlserver

    转:Zabbix 监控sqlserver 一:Zabbix监控sqlserver 方法一: 1.思路整理 1.在zabbix server上安装Freetds.unixODBC.unixODBC-de ...

  9. [LC] 438. Find All Anagrams in a String

    Given a string s and a non-empty string p, find all the start indices of p's anagrams in s. Strings ...

  10. go proxy转发工作中碰到的问题

    A-B 需求是一个中转 A-Proxy-B 读取来源请求A,在proxy读取body作些处理,再转给B,再把返回内容转给A 问题出在proxy这里 如果先把请求给B,再读body res, err : ...