ubuntu 14.04 安装git server
版本信息
- ubuntu : 14.04.1
- git version 1.9.1
- perl v5.10.1
- ssh OpenSSH_6.6.1p1
本次安装的git server使用gitolite实现。
参考资料
官网代码库
https://github.com/sitaramc/gitolite
官网手册
概念
gitolite依赖ssh公钥私钥鉴权机制。
ssh 公钥,私钥
ssh本身支持多种登陆鉴权:
- 基于口令方式(安全级别低,存在被窃听风险)
- 基于秘钥方式,安全级别高
gitolite安装
安装非常简单,列表如下:
- 在root或者其它账号下创建公钥,私钥对
ssh-keygen
保留 id_rsa 文件
下载 id_rsa.pub 文件备用
- root创建git账号
- 切入到git账号,su - git,克隆官网代码
git clone git://github.com/sitaramc/gitolite
- 按照官网介绍的后续安装步骤
- mkdir -p ~/bin
- gitolite/install -ln ~/bin
- gitolite setup -pk yourname.pub
这里的yourname.pub是刚才留存的pub文件。
服务端安装基本上结束了。
服务端管理
服务端管理是通过特殊仓库 gitolite-admin 来完成。
任何持有最初创建的公钥私钥对里面的私钥的人,都可以用该私钥克隆gitolite-admin库。
git clone git@192.168.1.5:gitolite-admin.git
上面命令有几处需要注意:
- ip是真实的服务器ip;
- 冒号后面没有/home/git/repositories路径,不需要,也不能加。
- 执行该命令的人必须持有 id_rsa 文件,并放入 .ssh 路径。
管理库克隆出来后,对keydir和conf目录中的文件管理和修改等同于操作一般的git库。
修改完成后,push到远端,远端会自动解析相关内容,并根据配置增加、删除用户,增加、删除git库。
可以参考: http://gitolite.com/gitolite/gitolite.html#basic-admin
理解
ssh协议的远端地址是可以指定用户的,其实从理论上来说,
所有人,都是使用git用户的,只是提供给系统的公钥不同,
服务端根据客户端提供的公钥私钥对来匹配,完成鉴权。
ubuntu 14.04 安装git server的更多相关文章
- ubuntu 14.04 安装svn server (subversionedge )
ubuntu 14.04 安装subversionedge 请仔细阅读安装包自带的readme文件! 1.先去官网,找安装包: http://subversion.apache.org/ http:/ ...
- ubuntu 14.04 安装mysql server初级教程
序,mysql数据库是开源的,被大多数企业所使用 目录 一.apt-get install 软件安装原理剖析二.安装mysql server三.配置和管理msyql 一.apt-get install ...
- ubuntu 14.04 安装mysql server的分支MariaDB Server初级教程
序,MariaDB Server是Mysql的fork版本,与Mysql完美兼容,mysql在10年被sun收购,后sun被oracle收购,后mysql的创建者及项目长期技术带头人之一的Michae ...
- ubuntu 14.04安装quickbuild server (一)
官网: http://www.pmease.com/ 指导网站: http://wiki.pmease.com/display/QB60/ 1. 安装quickbuild server ------ ...
- ubuntu 14.04安装mysql server & mysql client
$ sudo apt-get install mysql-server
- ubuntu 14.04 安装torch及编译环境zbstudio
ubuntu 14.04 安装torch及编译环境zbstudio torch zbstudio 本来是安装官网给的步骤安装torch的,可是碰到一系列的问题,后来参考网上的安装方法安装成功了 官网安 ...
- Ubuntu 14.04 安装 sysrepo v0.7.5
参考: Tentative gNMI support with sysrepo protobuf-c/protobuf-c Ubuntu 14.04 安装 sysrepo v0.7.5 安装依赖: s ...
- ubuntu 14.04安装 DevStack的脚本配置文件——localrc
本文ubuntu 14.04安装 DevStack的脚本配置文件——localrc,本文件名已经逐渐被取代,但是出于后向兼容性,使用该文件仍然可以为stack.sh安装脚本指定安装DevStack时的 ...
- Ubuntu 14.04 安装libssh
参考: libssh [CMake] include command Ubuntu 14.04 安装libssh $ git clone https://github.com/substack/lib ...
随机推荐
- unity, monoDevelop ide 代码提示不起作用的解决方法
monoDevelop ide 代码提示不起作用,可能是因为ide里索引了一些不存在的文件,检查一下solution窗口里是否有文件变红,如下图中springControlEx.cs.将变红的文件re ...
- wikioi 1474 十进制转m进制
/*===================================== 1474 十进制转m进制 题目描述 Description 将十进制数n转换成m进制数 m<=16 n<=1 ...
- HTML5服务器推送事件
目前客户端(浏览器)和服务端交互大致有以下几种方式: 1)form表单提交方式,适合访问量不大,对用户体验要求不高的web系统开发,或者页面整体刷新无伤大雅的场合,通信方向是客户端提交给服务端,是客户 ...
- 【java】 java 集合类UML图
- javascript 与和非
|| : 在javascript中,返回第一个真值,除非都是假值返回最后一个值(也是假值). 1 || 0; 0 || 1; 0 || 0; 0 || undefined; // undefined ...
- Hibernate3回顾-2-相关概念
2.几个概念 HIbernate简要的体系结构如下图所示 通过上图能够发现HIbernate需要一个hibernate.properties文件,该文件用于配置Hibernate和数据库连接的信息.还 ...
- This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms
异常消息:This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms ...
- Android开发——通过扫描二维码,打开或者下载Android应用
Android开发——通过扫描二维码,打开或者下载Android应用 在实现这个功能的时候,被不同的浏览器折磨的胃疼,最后实现了勉强能用,也查考了一下其他人的博客 android实现通过浏览器点击 ...
- bzoj2589: Spoj 10707 Count on a tree II
Description 给定一棵N个节点的树,每个点有一个权值,对于M个询问(u,v),你需要回答u xor lastans和v这两个节点间有多少种不同的点权.其中lastans是上一个询问的答案,初 ...
- Puppet Agent/Master HTTPS Communications
The agent/master HTTP interface is REST-like, but varies from strictly RESTful design in several way ...