在CentOS下搭建Git并可以通过Windows客户端访问

   2016-10-04 0
核心提示:亲测在本地虚拟机和远程服务器上无问题,如有不懂请留言。注意事项:以下所有操作是在root权限下操作的。 1.CentOS服务器版本 centos6.52.首先安装git,使用yum在线安装1 yum install -y git安装成功如图所示3.创建一个git用户,来运行git服务1 adduser git4.

亲测在本地虚拟机和远程服务器上无问题,如有不懂请留言。

注意事项:以下所有操作是在root权限下操作的。

1.CentOS服务器版本

centos6.5

2.首先安装git,使用yum在线安装

1 yum install -y git

安装成功如图所示

在CentOS下搭建Git并可以通过Windows客户端访问

3.创建一个git用户,来运行git服务

1 adduser git

4.创建git仓库目录并初始化

a.首先创建目录:

1 mkdir -p /mydata/git/gitRepo.git

b.初始化git仓库:

1 cd /mydata/git
2 git init --bare gitRepo.git

在CentOS下搭建Git并可以通过Windows客户端访问

5.改变文件的拥有着和群组

chown git:git gitRepo.git

原因:因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git结尾。

6.我们可以在客户端clone一下远程仓库

注意:在window平台上需要安装git工具

msysgit官网:https://git-for-windows.github.io/

云盘下载:https://yunpan.cn/ckGKthxzFJ4RD 访问密码 a01f

1 git clone git@IP:/mydata/git/gitRepo.git

在CentOS下搭建Git并可以通过Windows客户端访问

这里有两点需要注意:第一、第一次使用Git的clone或者push连接git,会得到一个警告:

这是因为Git使用SSH连接,而SSH连接在第一次验证GitHub服务器的Key时,需要你确认GitHub的Key的指纹信息是否真的来自GitHub的服务器,输入yes回车即可。

Git会输出一个警告,告诉你已经把GitHub的Key添加到本机的一个信任列表里了

这个警告只会出现一次,后面的操作就不会有任何警告了。

如果你实在担心有人冒充GitHub服务器,输入yes前可以对照GitHub的RSA Key的指纹信息是否与SSH连接给出的一致。

第二,这里提示你输入密码才能clone,当然如果你知道密码,可以键入密码来进行clone,但是更为常见的方式,是利用SSH的公钥来完成验证。

在CentOS下搭建Git并可以通过Windows客户端访问

7.创建SSH key

首先在用户主目录(window一般在C盘,用户文件)下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:

如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

1 ssh-keygen -t rsa -C "youremail@example.com"

8.Git服务器打开RAS认证

1 vim /etc/ssh/sshd_config

修改:

1.RSAAuthentication yes

2.PubkeyAuthentication yes

3.AuthorizedKeysFile .ssh/authorized_keys

如图所示:

在CentOS下搭建Git并可以通过Windows客户端访问

这里我们可以看到公钥存放在.ssh/authorized_keys文件中。所以我们在/home/git下创建.ssh目录,然后创建authorized_keys文件,并将刚生成的公钥导入进去。(如果是虚拟机中的Linux,可以通过ssh,连接本地虚拟机。先用ifconfig看一下局域网中的ip,然后在ssh工具中进行连接。如图所示查看虚拟机ip 192.168.130.134)

在CentOS下搭建Git并可以通过Windows客户端访问

然后再次clone的时候,或者是之后push的时候,就不需要再输入密码了:

1 git clone git@192.168.130.134:/mydata/git/learngit.git

9.禁用git用户shell登陆

出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。

1 vim /etc/passwd

找到类似下面的一行:

git:x:1001:1001:,,,:/home/git:/bin/bash

改为:

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

在CentOS下搭建Git并可以通过Windows客户端访问

这样,git用户可以正常通过ssh使用git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。

 
标签: Git Centos
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • deepin(debian)下使用Git
    deepin(debian)下使用Git
    Githubgithub是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开。安装git安装sudo apt-get install git配置用户名和邮箱git config --global user.name "用户名"git config --global user.email "
    02-10
  • Ubuntu16.04源码安装gitlab时出现Failed to con
    git@gitlab:~/gitlab$ sudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=productionFailed to connect to Gitaly...Error: 14:Connect Failed  出现上述的问题时,需要修改文件/home/git/gitlab/lib/tasks/gitlab/setup.rake ,把第4行的check_gitaly
    02-10
  • centos/linux下的安装git
    centos/linux下的安装git
    1.下载gitwget https://github.com/git/git/archive/v2.14.1.zip 2.安装依赖sudo yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel curl-devel perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker 安装成功后的截图 3.解压gitunzip
    02-09
  • centos7编译安装git最新版 centos离线安装git
    假如系统已经安装了git,先删除。如果是通过yum安装的,直接在终端使用以下指令删除:yum remove git如果是通过源码编译安装的,参考以下文章:Linux ./configuremakemake install 编译安装和卸载通过源码安装git。源码可以安装到最新版本的git,安装包的方式虽
    02-09
  • gitlab安装与配置(Centos6.8) yum安装gitlab
    0、Centos7请参照官方文档https://about.gitlab.com/installation/1. Install and configure the necessary dependencies下面命令可在gitlab官网找到,【Select an operating system...】选择不同的系统即可查看。sudo yum install curl openssh-server opens
    02-09
  • 在CentOS上把Git从1.7.1升级到1.7.12.4
    摘要:本文记录了在CentOS 6.3上,把Git从1.7.1升级到1.7.12.4的过程。1. 概述在我做的一个项目中,最近我对生产服务器上的一系列系统软件进行了升级,包括Git、Nginx、MySQL和PHP。这篇文章讲的是升级Git的过程,其他软件的升级,可见下面列出的文章。在Cent
    02-09
  • 用Apache配置Git服务器 架设git服务器
    Windows 2003Apache openlogic-apache-2.2.15-windows-ins-openssl-1Git-1.8.1.2-preview20130201参考资源:搭建 Windows 上 Apache + Git 服务器msysgit+apache安装说明 - git服务器部分Hosting a Git server under Apache on Windowsapache账号密码限制用户
    02-09
  • Apache Http Client 4 上传多个文件 (示例代码
    转自:http://www.baeldung.com/httpclient-multipart-upload1. OverviewIn this tutorial we will illustrate how to do a multipart upload operation using HttpClient 4.We’ll use http://echo.200please.com as a test server because it’s public and
    02-09
  • IIS7.5上安装Git服务器
    IIS7.5上安装Git服务器
    系统要求:IIS 7及以上.NET FrameWork 4.5ASP.NET 4以上安装步骤:从Bonobo官网下载最新版本的BonoboService;解压下载的zip包;在IIS中新建网站(我这里为新建的网站命名为“Git”),并启用WebDAV,如下图所示:还要修改应用程序池为.NET4.0(新建网站时指
    02-09
  • debian安装git管理本地代码
    debian安装git管理本地代码
    安装git# aptitude install git-core# aptitude install git-doc git-svn git-email git-gui gitk创建仓库mkdir ~/repository# 创建git所有项目仓库目录cd ~/repository # 跳转到上一步创建的目录git init --bare example.git # 初始化一个example.git的空项
    02-09
点击排行