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. xib下如何修改frame

    1.取消xib下Use Auto Layout 2.xcode->product->clean

  2. Android开发学习1----AndroidStudio的安装、创建第一个Android Studio文件、Android Studio界面介绍和HelloWord!

    移动开发的工具有很多:Android Studio,eclipse,Hbuilder等,其中,现如今最火的开发工具是Android Studio,Android Studio是谷歌自己推出的一款集成开 ...

  3. shell day01总结

    ,Iptables –Z 清空再计数 内存是如何工作的?是干什么的? 随机存取存储器又称作“随机存储器”,是与CPU直接交换的内部存储器,也叫主存.它可以随时读写,而且速度很快,通常作为操作系统或其他 ...

  4. 吴裕雄--天生自然python机器学习:使用Logistic回归从疝气病症预测病马的死亡率

    ,除了部分指标主观和难以测量外,该数据还存在一个问题,数据集中有 30%的值是缺失的.下面将首先介绍如何处理数据集中的数据缺失问题,然 后 再 利 用 Logistic回 归 和随机梯度上升算法来预测 ...

  5. openfire配置好文

    http://www.th7.cn/db/mysql/201406/59838.shtml 下载地址:Openfire 3.8.2 Release

  6. 5)添加分发参数c,选择控制器

    目录关系:  代码展示: newnewnew.controller.class.php <?php /** * Created by PhpStorm. * User: Interact * D ...

  7. 【Linux_Shell 脚本编程学习笔记五、Oracle JDK1.8 安装shell 脚本】

    脚本使用说明: 首先在脚本的同级目录下有个 jdk的安装包 脚本和安装包必须在同级目录下才能够安装(脚本没有优化,还可以使用  wget  从网上下载指定版本的  jdk 安装包) #!/bin/sh ...

  8. 安装php5.4 mv9 +apache2.2+mysql5.5问题好多。

    1 网站目录的设置,网站 默认文件的加载. 2 php.ini文件的加载问题.

  9. [LC] 168. Excel Sheet Column Title

    Given a positive integer, return its corresponding column title as appear in an Excel sheet. For exa ...

  10. Skipping MapperFactoryBean with name 'sysUserMapper' and 'com.buding.system.mapper.SysUserMapper' mapperInterface. Bean already defined with the same name!

    前几天整体看了一下SpringBoot的简介,觉得看不如自己动手做,于是动手做一个简单的用户管理.启动的时候遇到了Skipping MapperFactoryBean with name 'sysUs ...